2013-04-05 38 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'