Windows批处理脚本删除文件夹中的所有内容,但不包括一个

Tho*_*s K 12 windows command-line batch-file

我有一个脚本删除文件夹中的所有子文件夹和文件:

FOR /D %%i IN ("D:\myfolder\*") DO RD /S /Q "%%i" & DEL /Q "D:\myfolder\*.*"
Run Code Online (Sandbox Code Playgroud)

而且效果很棒!唯一的问题是我想排除一个或多个文件夹,例如XCOPY排除功能.

我只是想不出如何将其添加到脚本中.

Pat*_*ick 17

您可以尝试在for循环之前隐藏文件夹,然后取消隐藏它们,如下所示:

ATTRIB +H D:\myfolder\keepit
FOR /D %%i IN ("D:\myfolder\*") DO RD /S /Q "%%i" DEL /Q "D:\myfolder\*.*"
ATTRIB -H D:\myfolder\keepit
Run Code Online (Sandbox Code Playgroud)