Windows命令行FOR循环如何匹配文件名开头归档指定EVTX文件
解决Windows批处理中匹配特定开头EVTX文件的归档问题
你的需求很明确——只归档以Archive-Security开头的EVTX日志文件,而不是文件夹里所有的.evtx文件,这个在批处理里只需要调整通配符的写法就能轻松搞定。
修改后的完整代码
chdir /D "C:\Users\Administrator\Desktop\111" FOR %%i IN (Archive-Security*.evtx) DO "C:\Program Files\7-Zip\7z.exe" a "%%~ni.7z" "%%i"
关键改动说明
- 把原来的
*.evtx替换成Archive-Security*.evtx:Windows批处理的通配符支持前缀匹配,这个写法会精准匹配所有以Archive-Security开头、以.evtx结尾的文件,完全符合你的命名规则(比如Archive-Security-2018-04-27-23-07-55-901.evtx这类文件都会被选中)。 - 其他部分保持不变:
%%~ni依然会提取原文件的文件名(不含后缀),用来作为压缩包的名称,7-Zip的压缩逻辑也和之前一致。
这样修改后,你的FOR循环就只会处理目标文件,不会误操作其他EVTX日志啦。
内容的提问来源于stack exchange,提问作者gointern
相关产品推荐
相关产品推荐

