首页 > 解决方案 > 排除某个其他文件中包含的键字符串文件的所有行

问题描述

我正在尝试编写一个涉及两个文件的 Windows 批处理文件。

第一个文件all.err包含失败测试用例的日志,如下所示:

`CHECK:FAIL,"It should have been DEST`"
`CHECK:FAIL,"It should have been XYZA`"
`CHECK:FAIL,"It should have been PRTS`"
`CHECK:FAIL,"It should have been ABCD`"
.....................................

我们有另一个文件exclude.txt,它每行存储一些字符串,例如:

XYZA
ABCD

我正在尝试编写一个 Windows 批处理脚本,它可以列出其中all.err不包含任何单词的所有行exclude.txt

我无法理解如何实现这一点 - 有什么想法吗?

标签: windowsbatch-file

解决方案


这个任务只需要一个 Windows 命令行,由SomethingDark编写:

%SystemRoot%\System32\findstr.exe /I /L /V /G:exclude.txt all.err

在 Windows 命令提示符窗口中运行的帮助输出findstr /?解释了参数/I(不区分大小写)、/L搜索字符串是直译字符串)、/V反向匹配输出)、/G(从文件中获取搜索字符串)


推荐阅读