删除所有子目录和子文件而不删除父/根目录?

时间:2013-01-23 22:32:59

标签: windows batch-file command-line directory

通过Windows Batch,该命令将删除/删除所述父/根文件夹,删除文件夹的所有子目录和子文件是什么?

这是我到目前为止所尝试的内容:

ECHO "Good riddance, cache! Muahahahahahaha"
cd "C:\Users\abrewer\Desktop\cache"
del * /q

以上只删除文件,但不删除子文件夹。我也尝试过RMDIR和RD,这两个命令似乎删除了父/根目录。

2 个答案:

答案 0 :(得分:5)

最简单的方法:

cd "C:\Users\abrewer\Desktop\cache"
rd /s /q .

它在尝试时输出错误消息并且无法删除父目录,否则它将完美地运行。

或者,例如:

cd "C:\Users\abrewer\Desktop\cache"
del * /q
for /D %%i in (*) do rd /s /q "%%i"

可能会奏效。如果您从命令行而不是批处理文件中运行,请记住仅使用单个百分号。

答案 1 :(得分:3)

@echo off
ECHO "Good riddance, cache! Muahahahahahaha"
pushd "C:\Users\abrewer\Desktop\cache"
del * /q
for /d %%F in (*) do rd /s /q "%%F"
popd