19

我想在 Windows 操作系统上的项目中递归地搜索一个字符串,例如“main”。我搜索并找到了解决方案Windows recursive grep command-line

我用两种不同的方法应用了相同的方法,结果不如预期。

例如我的方法

findstr /S "main" *.cpp

但是当我选择

findstr /S "int main" *.cpp

我得到的不仅仅是我的主要功能。这两种方法有什么区别?为字符串提供空间是错误的吗?

4

2 回答 2

32

这是因为findstr需要一组字符串来搜索. 要实际匹配字符串int main,您必须使用以下/C选项:

findstr /s /C:"int main" *.cpp

而您的变体为您提供每一行都带有intor main

于 2013-08-02T05:23:45.813 回答
4

在这里聚会有点晚了,但如果你使用

findstr /S "int.main" *.cpp

它会将点视为与空格匹配的通配符,只要您不介意一些多余的匹配(在这种情况下不太可能),它就可以正常工作。

我使用它,在阅读上面的答案之前不知道 /C: 选项。

于 2015-07-30T06:28:51.527 回答