我有一个批处理脚本,如下所示。
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%
中删除文件
发布于 2012-12-07 21:35:49
你需要用另一个来转义%。
del "D:\TEST\TEST 100%%\Archive*.TXT"
发布于 2013-10-19 05:54:47
有多种方法可以批量处理,所以如果使用双百分比%%
进行转义对您不起作用,那么您可以尝试如下所示:
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
来更改为你想要的任何名称。
发布于 2016-09-03 23:36:06
考虑到您需要删除的文件的扩展名为txt
,并且位于D:\My Folder
位置,那么您可以在bat文件中使用以下代码。
cd "D:\My Folder"
DEL *.txt
https://stackoverflow.com/questions/13764103
复制相似问题