【问题标题】:Batch - Delete all folders and their contents EXCEPT ONE FOLDER批处理 - 删除除一个文件夹外的所有文件夹及其内容
【发布时间】:2023-10-30 17:11:01
【问题描述】:

我有一个名为“父”的文件夹。我想删除“父”中的所有内容:文件、文件夹、除名为“保留”的文件夹及其内容之外的所有内容。 我一直在摆弄这个,但我就是想不通,主要是因为我不知道批处理是如何工作的。

提前致谢。

【问题讨论】:

    标签: batch-file


    【解决方案1】:

    测试一下:

    @echo off
    for /f "delims=" %%a in ('dir c:\parent /b /s /a-d ^|find /v /i "\keep\"') do del "%%a
    for /f "delims=" %%a in ('dir c:\parent /b /s /ad  ^|find /v /i "\keep" ^|sort /r ') do rd "%%a
    

    【讨论】:

      【解决方案2】:

      我会为此使用 Robocopy:创建一个空文件夹,例如 mkdir c:\a,然后将其镜像到您要删除的文件夹并使用排除目录标志 (/xd) 来保留您不想删除的文件夹删除robocopy /mir c:\a c:\parent /xd keep

      【讨论】:

        最近更新 更多