【问题标题】:Exclude a folder inside temp when executing a del batch file执行 del 批处理文件时排除 temp 内的文件夹
【发布时间】:2013-03-21 12:33:59
【问题描述】:

如果我想在我想删除的文件夹中排除一个文件夹,我应该在我的 DEL 批处理文件中添加什么?

我有这段代码可以删除我临时文件夹的所有内容

DEL /F /Q C:\temp

现在,我想在里面排除一个名为 imptfolder 的文件夹。无论它是否存在于临时文件夹中,都不应该被删除。我该怎么做?

【问题讨论】:

    标签: batch-file cmd


    【解决方案1】:

    这里有一些批处理脚本代码可以满足您的要求。

    for /d %%I in (c:\temp\*) do (
        if /i not "%%~nxI" equ "imptfolder" rmdir /q /s "%%~I"
    )
    del /q c:\temp\*
    

    如果您只是从控制台输入这些命令,请使用单百分比而不是双百分比。

    cd /d c:\temp
    for /d %I in (*) do @(if /i not "%~I" equ "imptfolder" rmdir /q /s "%~I")
    del /q *
    

    【讨论】:

    • 有没有办法用这个脚本做多个文件夹?
    • 是的,for /d 的工作方式与普通的 for 循环非常相似。试试for /d %%I in (c:\folder1\* c:\folder2\* "c:\folder with spaces\*") do...
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-07-30
    • 1970-01-01
    • 1970-01-01
    • 2021-12-26
    • 1970-01-01
    • 2022-01-19
    相关资源
    最近更新 更多