I have a script that runs the command:
del c:\mydir\*.*
Is there a command line switch I can use that will also delete all subfolders in that directory? Thanks!
|
I have a script that runs the command:
Is there a command line switch I can use that will also delete all subfolders in that directory? Thanks!
| ||||
|
feedback
|
|
If there are files in the C:\mydir directory then you'll need to do both lines. Otherwise, the first line will do what you want:
That preserves the C:\mydir directory. Edit: David1235 is quite right. If you want to do this in a batch file, you'll need to double-up the "%" in the "FOR ..." line. It's a little unclear to me why David1235's script needs the "pushd" and "popd" when you can specify the path right in the "FOR ..." and "DEL ..." lines, though. | |||||
feedback
|
|
If you want to run your script from anywhere, try @echo off pushd "C:\mydir" for /d %%d in (*.*) do rmdir /s /q "%%d" del /q *.* popd In a batch script, you need the double percent signs. From "help for": To use the FOR command in a batch program, specify %%variable instead of %variable. Variable names are case sensitive, so %i is different from %I. | |||||
feedback
|
|
Is there a reason that:
won't work? | |||
|
feedback
|
|
Yes, rmdir. (hint: rmdir /?) Edit: You probably want to keep the folder. Try this out in a batch file:
| |||||||||
feedback
|
|
Instead of complex FOR...LOOPS etc. I would just use:
... but an even faster method is:
as RD is "remove directory" just as the old DELTREE | |||
|
feedback
|