我正在尝试创建一个批处理文件,该文件将搜索3.5 TB分区并删除部分匹配文件名的所有文件。
我们的文件结构设置为5位数的项目编号,然后在扩展名之前可能是非常随机的后缀。例如:
54326.jpg
54326 5x6.jpg
54326 (OLD ART).jpg
这是通过无休止地忽视对命名约定的遵守而发生的,现在我们即将清除分配随机数据的系统。为了使问题更难解决,它分散在4个驱动器和大约300,000个文件夹之间。
我能够从其他论坛中找到此代码,但不是将其移动到另一个文件夹,而只是想使用项目编号删除所有实例。
for /r %%x in (54326*.*) do move "%%x" "DESTINATION"
我需要使用硬盘驱动器上所有文件夹中的5位部分名称删除所有文件(各种扩展名)的代码。
我正在使用excel将代码组合在一起,因为这将对大约25,000个产品编号进行分组。我将获得一个要删除的产品编号列表。如果代码可以索引.txt
文件以获取名称以使事情变得更简单,则可以将此列表转换为txt
文件。
答案 0 :(得分:2)
dir "your location"
del /s 54326*.*
这将删除以示例中的54326开头的文件并保留文件夹,但也会在子文件夹中删除。这里有几个选项:
/P Give a Yes/No Prompt before deleting.
/F Ignore read-only setting and delete anyway (FORCE)
/S Delete from all Subfolders (DELTREE)
/Q Quiet mode, do not give a Yes/No Prompt before deleting.
如果您的.txt文件包含要删除的完整文件列表,则可以执行以下操作
for /f "delims=" %%f in (your_text_file.txt) do del /s "%%f"