批量脚本删除一个子文件夹并保留另一个子文件夹,同时删除其中的所有文件?

时间:2012-08-22 05:46:28

标签: batch-file

我有一些可以帮助的东西。我举个文件夹布局作为例子:

  

C:... \日志\ SubfolderA

     

C:... \日志\ SubfolderB

每个文件夹包含多个日志作为文本文件。我希望能够做的是使用批处理脚本完全删除文件夹SubfolderB,但清除文件夹SubfolderA中除一个文件以外的文件,同时保留SubfolderA。

或者,我需要另一个完全删除文件夹SubfolderB,然后在保留文件夹的同时删除SubfolderA中的所有内容。一旦我知道如何做我刚才提到的那个,那么下一个对我来说应该很容易。

目前,我只是从每个文件夹运行一个脚本,删除其透视文件夹中除批处理文件以外的所有文件,或者删除除批处理文件和我要保留的文件之外的所有文件( SubfolderA批处理脚本执行此操作),但如果可能的话,用一块石头杀死两只鸟并且只需要执行一个文件会容易得多。

谢谢!

1 个答案:

答案 0 :(得分:0)

您可以使用rd /s /q foo删除目录(包括其内容)。您可以使用del /f /q foo\*删除目录中的所有文件。

要删除目录中除一个文件之外的所有文件,您需要一些适用于您保留的文件的标准,然后需要对该目录的文件进行循环:

for %%F in (foo\*) do if not "%%F"=="bar" del "%%F"