使用 findstr.exe 进行逻辑 OR 比较

Tho*_*ini 11 windows command-line-interface findstr

这可能是一个愚蠢的问题,但即使阅读了文档我仍然不确定如何在包含“.cpp”“.h”的文件中查找所有行。

有没有办法做到这一点?

例如(不起作用):

findstr /i .cpp,.h // , == OR
Run Code Online (Sandbox Code Playgroud)

squ*_*man 9

试一试,应该对你有用。

findstr /i "\.cpp \.h" myfile.txt
Run Code Online (Sandbox Code Playgroud)

用引号括起来并用空格分隔。请注意,您还必须转义 . 在他们两个。


ely*_*sch 5

如果您需要包含短语(空格分隔的单词),您可以这样做:

findstr /i /c:"IBSS" /c:"WDI Version" /c:"Soft Ap"
Run Code Online (Sandbox Code Playgroud)

或者,如果您收到一些不需要的行,您也可以使用/v参数排除它们:

findstr /i /c:Hosted /c:Version /c:Driver | findstr /v /i /c:drivers /c:native
Run Code Online (Sandbox Code Playgroud)

(在 Windows 7 和 Windows 10 上测试过)