![如何创建批处理文件,根据文件名末尾的单词(使用单词列表)删除文件?](https://linux22.com/image/1375419/%E5%A6%82%E4%BD%95%E5%88%9B%E5%BB%BA%E6%89%B9%E5%A4%84%E7%90%86%E6%96%87%E4%BB%B6%EF%BC%8C%E6%A0%B9%E6%8D%AE%E6%96%87%E4%BB%B6%E5%90%8D%E6%9C%AB%E5%B0%BE%E7%9A%84%E5%8D%95%E8%AF%8D%EF%BC%88%E4%BD%BF%E7%94%A8%E5%8D%95%E8%AF%8D%E5%88%97%E8%A1%A8%EF%BC%89%E5%88%A0%E9%99%A4%E6%96%87%E4%BB%B6%EF%BC%9F.png)
我有一个目录,里面有数千个html
文件分散在几个子目录中。我需要删除符合许多条件之一的所有文件。所有条件都类似。文件名如下:
MM-DD_hh-mm-ss__www.host.com.html
因此,必须删除所有以特定主机名结尾的文件。目前大约有 20 个主机名。(但这个数字将增加到大约 100 个。)我将列表存储在txt
文件中,并且更喜欢这样做。
__first.site.com.html
__www.secondsite.com_.html
__site.com_numberthree.html
问题是,一些“好”文件包含“坏”主机名,但不在文件名末尾。
__www.onesite.com_.html (bad)
__www.onesite.com_prices.html (good)
我可以创建一个 bach 文件来安全地扫描所有子目录并使用列表删除不必要的文件吗?操作系统是 Windows 7。我想设置任务计划程序来每晚运行此类任务。但我不熟悉命令。请帮忙。
PS 实际上,一些“坏”文件有链接文件夹_files
。我希望它们会被自动删除,就像我手动删除主文件时一样html
。
答案1
只需快速帮助您入门:
@echo off
for /F %%p in (list.txt) do (
echo Current pattern: %%p
for /R "C:\" %%f in (*%%p*) do (
echo File: %%f
)
)
exit /B 0