Linux
grep + 在文件/腳本中的文件夾下搜尋遞歸複雜語法
我們要在文件夾/s下遞歸搜尋以下行
awk '{print}'|grep -i -e 'port is up' -e 'valid output'
所以我們這樣做了:
grep -r "awk '{print}'|grep -i -e 'port is up' -e 'valid output'" /var grep -r "awk '{print}'|grep -i -e 'port is up' -e 'valid output'" /etc grep -r "awk '{print}'|grep -i -e 'port is up' -e 'valid output'" /opt
但我不確定 grep 是否可以管理“’”和“{”字元或者我的語法錯誤?
要搜尋固定字元串(不是正則表達式),請使用
-F
選項 withgrep
。如果您還需要確保您的字元串與整行匹配,請使用-x
:grep -Fx -r '...your string here...' directory
要獲得近似命中(如果全行搜尋不返回任何內容),我會從僅
port is up
(不帶-x
)開始,或者可能grep -F -r -e 'port is up' -e 'valid output' directory
當您在此處使用基本正則表達式時,正則表達式模式中既不也不
|
特殊。在正則表達式中從不特殊。但是,由於您正在使用字元串(而不是模式)進行搜尋,因此您仍然應該使用.{``}``'``-F