我想创建一个.bat文件,如果内部出现某些字符串,我可以删除该文件。例如,如果我想删除其中包含字符串竖琴的文件,并且该文件夹中的文件是:
harp1.txt
mellowharp.txt
highharplow.txt
我希望能够删除所有这些文件。我想通过仅仅编写
来了解如何以字符串开头或结尾的方式del harp*.*
del *harp.*
但如果在琴弦中间发现竖琴,我无法弄清楚怎么做。
我已经尝试过在竖琴的两侧放一个星号以捕捉所有情况,但显然这不起作用。
这实际上是我第一天和.bat文件的经验,我真的很感激我对此有任何帮助,但请温柔并解释一切因为我在没有任何知识的情况下进入这个。
答案 0 :(得分:0)
好吧,因为使用del *harp*.*
并不适合你,你可以遍历指定目录中的所有文件,然后在子字符串" harp"可以在文件名中找到。
这应该这样做:
@echo off
for /f %%F in ('dir /b * ^| find /i "harp"') do del %%F
echo Files Successfully Deleted...
pause>nul
exit
确保此.bat
文件与其他文件位于同一目录中。
说明:
for
命令循环遍历目录中的文件并将它们分配给变量%%F
并搜索子字符串" harp"在文件名中。然后,找到后,do del %%F
告诉程序删除文件(%%F
)。详细了解for
语句here。
echo
命令只是在控制台窗口中打印一行文本。要详细了解echo
click here。
pause>nul
暂停程序并等待用户按键,但屏幕上不显示任何文字。 (显示的普通文本将是 按任意键继续... )。有关pause
here的更多信息。exit命令停止程序。有关
exit
here的更多信息。