首页 文章

用于删除文件的批处理脚本

提问于
浏览
78

我有一个批处理脚本如下 .

D:
del "D:\TEST\TEST1\Archive\*.TSV" 
del "D:\TEST\TEST1\Archive\*.TXT"
del "D:\TEST\TEST2\Archive\*.TSV" 
del "D:\TEST\TEST2\Archive\*.TXT"
del "D:\TEST\TEST 100%\Archive\*.TSV" 
del "D:\TEST\TEST 100%\Archive\*.TXT"

上面的代码删除了除文件夹 TEST 100% 之外的所有文件夹中的所有".txt"和".tsv"文件 . 要从 TEST 100% 删除文件,我收到的错误为 The Path could not be found . 我想文件夹名称中的%符号会产生问题 . 任何人都可以指导我解决问题并从文件夹 TEST 100% 删除文件?

5 回答

  • -7

    你需要用另一个来逃避%

    del "D:\TEST\TEST 100%%\Archive*.TXT"
    
  • 2

    假设您已将软件保存到桌面上 .
    如果你想删除像卸载程序一样的整个文件夹,你可以使用它 .

    cd C:\Users\User\Detsktop\
    rd /s /q SOFTWARE
    

    这将删除名为software及其所有文件和子文件夹的整个文件夹

    Make Sure You Delete The Correct Folder Cause This Does Not Have A Yes / No Option

  • 10

    有多种方式可以批量处理,所以如果以双倍百分比逃避 %% 对你不起作用,那么你可以尝试这样的事情:

    set olddir=%CD%
    cd /d "path of folder"
    del "file name/ or *.txt etc..."
    cd /d "%olddir%"
    

    这是如何工作的:

    set olddir=%CD% 将变量 "olddir" 或您喜欢的任何其他变量名称设置到启动批处理文件的目录中 .

    cd /d "path of folder" 更改批处理将要查看的当前目录 . 保留引用并更改您瞄准的路径的文件夹路径 .

    del "file name/ or *.txt etc..." 将删除批处理中当前目录中的文件,只是不要在文件名之前添加目录路径,只是拥有完整的文件名,或者删除多个具有相同扩展名的文件 *.txt 或任何扩展名你需要 .

    cd /d "%olddir%" 获取使用旧路径保存的变量并返回到批处理启动的目录,如果您不希望批处理返回到其先前的目录路径,则不重要,并且在变量名称可以更改之前说明通过改变 set olddir=%CD% line 来改变你想要的任何东西 .

  • 8

    请考虑您需要删除的文件的扩展名为 txt ,位于 D:\My Folder 位置,然后您可以在bat文件中使用以下代码 .

    cd "D:\My Folder"
    DEL *.txt
    
  • 94

    在批处理代码中,您的路径不应包含任何空格,因此请将您的文件夹名称从“TEST 100%”更改为“TEST_100%”,新代码将为del“D:\ TEST \ TEST_100%\ Archive * .TXT”

    希望这能解决你的问题

相关问题