递归grep搜索文件中的特殊字符(C ++运算符)

时间:2013-01-13 13:11:49

标签: shell command-line grep

我正在尝试在目录中进行递归搜索,查找在我的代码文件中出现以下字符序列的实例:

- =

我在CLI使用以下命令:

grep -rn -= --include=*.hpp .

我收到以下错误消息:

grep: invalid option -- '='
Usage: grep [OPTION]... PATTERN [FILE]...
Try `grep --help' for more information.

不幸的是,这个帮助在解决我的问题方面没什么帮助(至少,我看不出它是如何解决我的问题的。)

2 个答案:

答案 0 :(得分:2)

尝试:

grep -rn --include=*.hpp -- -= .

问题是-=被解释为命令行选项。使用--表示命令行选项的结束,因此-=将被解释为模式。

答案 1 :(得分:1)

或许

grep -r -- -= .--将选项(以 - 开头)与命令行的其余部分分开。顺便说一句:您可能需要隐藏shell中的星号,即使用--include=\*.hpp