我有一台PC在当天的不同时间运行特定的BAT文件。为了确保我跟踪所有任务正在发生,我使每个任务在名为tack.txt
的日志文件中注册一个条目。这通常是它的外观:
Start Cams @ 10/09/2016 15:11:43 Update List @ 11/09/2016 14:13:47 EPG Update @ 11/09/2016 16:59:48 Start Cams @ 11/09/2016 17:01:35 Restart @ 13/09/2016 17:16:52
每个条目都在一个单独的行中,并且具有显示的日期和时间。
是否可以创建一个BAT文件,删除超过3天的条目以保持流程整洁?
答案 0 :(得分:0)
是。很难在昨天与批处理(处理几个月/几年/一天的特殊情况),但在Powershell的帮助下很容易。
你可以得到这样的日期:
for /f %%a in ('"powershell [DateTime]::Now.AddDays(-2).ToString('dd/MM/yyyy')"') do ( set today-2=%%a )
然后你可以像这样搜索它们,并将匹配的行输出到文件中:
findstr "%today-2% %today-1% %today%" test.txt >matching.txt
然后,您可以通过copy /y
和del
将match.txt替换为日志文件。