2013-04-05 34 views
18

我试图到grep一个PHP函数调用我如何grep一个大于符号?

grep -Ri '->someFunction' .

但它不工作。我究竟做错了什么?

+0

而不是'grepping'在''','grep'中的所有文件。 'grep' - > someFunction'*。*' – 2013-04-05 14:37:58

+0

我更新了我的问题以反映我使用'-Ri'标志的实际使用 – 2013-04-05 14:40:50

回答

32

这不是引号:试试这个:

grep -Ri -- '->someFunction' . 

--部分代表的选择结束;这是个骗局。

+0

谢谢!它完全工作! 'grep -Ri - ' - > someFunction'。' – 2013-04-05 14:42:45

+1

如果您使用的是旧系统,则必须使用'grep -e'而不是'grep - ''。但是,旧的greps可能不支持'-R'。 – zwol 2013-04-05 15:01:13

+1

此外,最好将'--'描述为“* options *的结尾*”,而不是“* arguments * *的结尾”。在'--'后面有参数,这只是一个领先的'-'不再特别。 – zwol 2013-04-05 15:02:12

0

这是“不工作”不足以诊断问题的情况之一。

在你的情况,你得到了错误的信息是

grep: invalid option -- > 

那是你的线索,看到->someFunction被看作是一个命令行开关。

我也建议你可能想看看ack,这是为了这种源代码搜索。在你的情况下,你会这样做:

ack -i -- '->someFunction'