Grep

grep 查找具有特殊字元的字元串的文件

  • August 15, 2021

目前要查找帶有我使用的簡單字元串的文件,grep -iRl "text" ./ 我想找到以下字元串->text

嘗試grep -F -iRl "text" ./ 轉義-\>text不起作用。獲取無效選項錯誤。如何使用特殊字元?謝謝

使用grep -e

grep -F -iRl -e "->text" ./

或者

grep -F -iRl -e -\>text ./

轉義或引用>告訴shell將其按字面意思傳遞給grep. 但這對於grep期望以破折號開頭的參數作為選項沒有幫助。顯式給出帶有-e選項的模式會繞過該問題。

我的 Debian 上的 GNU grep 手冊頁甚至提到了這一點:

-e PATTERNS,--regexp=PATTERNS

使用 PATTERNS 作為模式。

$$ … $$此選項可用於保護以“-”開頭的模式。

您可以使用雙減號將選項與參數分開:

grep -iRlF -- '->text' .

引用自:https://unix.stackexchange.com/questions/664789