Linux

使用 GREP 在文件中查找文本

  • February 27, 2016

我正在嘗試使用 grep 來查找我確定存在於多個文件中的特定 PHP 程式碼行,但我得到的只是一個空結果。請告知我需要如何修改我的 grep 查詢:

sudo grep -ilr 'if (isset($_COOKIE["id"])) @$_COOKIE["user"]($_COOKIE["id"]);' /path/to/dir/

. * ^ $ [ and ]在正則表達式中有特殊含義,需要反斜杠轉義。

sudo grep -ilr 'if (isset(\$_COOKIE\["id"\])) @\$_COOKIE\["user"\](\$_COOKIE\["id"\]);' /path/to/dir/

我會使用兩個 grep 來簡化搜尋:

sudo grep -Inri 't(\$_C' |grep '"id' /path/to/dir

第一個 grep 搜尋,t($_C第二個 for"id所以你有很好的機會找到你的文件。

並且您避免使用空格和類似字元來破壞您的搜尋模式。

引用自:https://serverfault.com/questions/760156