我是Windows批处理脚本的新手。我已经通过网络和网站进行了研究并尝试了解决方案,但似乎没有人给我预期的结果。
这就是我想要实现的目标:
根据我的研究,我能够编写一个使用字符串搜索文件的批处理代码,但无法执行步骤2,3,4和5.
请帮忙。
这是我的批次代码:
@echo off & setlocal
set "MySearchString=Scheduled_error"
for /r %%a in (*) do for /f "delims=" %%i in ('echo("%%~na" ^| findstr /i "%MySearchString%"') do echo del "%%~fa"
答案 0 :(得分:1)
似乎是FORFILES
的完美任务!
forfiles /p c:\SomePath\ /s /m *.* /c "cmd /c echo @path"
会显示超过一天的所有文件。您可以修改使用您要查找的文件名替换*.*
的过滤器。
要删除这些文件,只需将echo @path
替换为del /y @path
,然后添加/d -1
参数:
forfiles /p c:\SomePath /s /m *.* /d -1 /c "cmd /c del /y @path"
要删除的文件的年龄是使用/d -1
开关指定的,其中-1
表示1天及以上。