@ECHO OFF :: Windows version check IF NOT [%OS%]==[Windows_NT] GOTO Syntax :: Only one single command line parameter specified? IF [%1]==[] GOTO Syntax IF NOT [%2]==[] GOTO Syntax :: Help wanted? ECHO.%* | FIND "?" >NUL IF NOT ERRORLEVEL 1 GOTO Syntax :: No wildcards allowed ECHO.%* | FIND "*" >NUL IF NOT ERRORLEVEL 1 GOTO Syntax :: Was a valid directory specified? DIR /AD /X "%~1.\..\%~n1*" 2>NUL | FIND "" | FIND /I "%~n1" >NUL IF ERRORLEVEL 1 GOTO Syntax SETLOCAL ECHO."%~f1" TAKEOWN "%~f1" PUSHD "%~f1" TAKEOWN *.* SET StartDir=%CD% FOR /F "tokens=* delims=" %%A IN ('DIR /AD /B "%StartDir%.\*.*" 2^>NUL') DO ( ECHO."%%~fA" ATTRIB -H -R -S "%%~fA" TAKEOWN "%%~fA" CD "%%~fA" ATTRIB -h -r -s *.* >NUL 2>&1 FOR /F "tokens=* delims=" %%? IN ('DIR /A-D /B "%%~fA.\*.*" 2^>NUL') DO ( ECHO."%%~f?" TAKEOWN "%%~f?" ) CALL "%~f0" "%%~fA" CD "%StartDir%" ) POPD ENDLOCAL GOTO:EOF :Syntax ECHO. ECHO OWN.bat, Version 0.59.59 FINAL BETA for Windows 2000 ECHO Recursively take ownership of entire specified directory tree. ECHO. ECHO Usage: OWN startdir ECHO. ECHO Uses TAKEOWN.EXE from the Resource Kit. ECHO. ECHO Written by Rob van der Woude ECHO http://www.robvanderwoude.com ECHO. ECHO WARNING: This batch file hasn't been tested extensively yet. ECHO Use entirely at your OWN risk.