如何删除除Windows批处理脚本中的文件夹外的所有文件夹?

时间:2014-06-20 11:38:38

标签: windows batch-file

我试图删除文件夹中的文件和文件夹,除了一个,但到目前为止我还没有得到一个完美的答案吗?

上面有人可以提供帮助吗?

我的文件夹结构如下:

我在E:\下有ABC文件夹。在该文件夹中我有4个名为A.txt,B.txt,C.txt&的文件。 D.txt和我有3个文件夹,因为它们是AB,BC& CD ...我想删除ABC文件夹中的所有文件和文件夹,但ABC文件夹中的CD文件夹除外..

任何人都可以帮忙解决上述问题吗?

3 个答案:

答案 0 :(得分:1)

测试一下 - 它应该有用。

pushd "d:\abc\cd" && rd /s /q "d:\abc" 2>nul

答案 1 :(得分:1)

pushd“d:\ abc \ cd”&& rd / s / q“d:\ abc”2> nul将删除文件夹cd中的所有文件。

答案 2 :(得分:0)

由于您确切知道目录树,因此您可以删除所有不需要的元素:

del e:\abc\ab\*.*
rmdir e:\abc\ab
del e:\abc\bc\*.*
rmdir e:\abc\bc

更一般的解决方案:

for /D %%d in (e:\abc\*) do if "%%d" neq "CD" rmdir "%%d"