我正在尝试编写一个批处理文件,从文本文件中删除以 19:、20:、21: 和 22: 开头的行,然后将文件保存到其他目录。我尝试过以下方法:
findstr /v /b "19:" SAT*.asc > new.asc
使用此字符串,它将删除以 19 开头的行:但随后将“SAT*.ASC”添加到文本文件的每一行(其中“*”是文件的日期,因此文件名为 SAT240101.ASC)
答案1
for %%f in (SAT*.asc) do (
findstr /v /b "19:" "%%f" | findstr /v /b "20:" | findstr /v /b "21:" | findstr /v /b "22:" >"%%f_new.asc"
)
您可以使用带有正则表达式的单个findstr
,但这种方式更简单。