linux三劍客之grep 文字過濾器
阿新 • • 發佈:2021-12-21
Linux 三劍客之grep
三劍客之一:grep 定義: 文字過濾器: 根據文字內容過濾檔案。 語法格式 :grep 引數 匹配規則 操作物件 引數: -n :過濾文字時,將過濾出來的內容在檔案內的行號顯示出來 -A n:匹配成功之後,將匹配行的後n行顯示出來 例:[root@localhost ~]# grep -n -A 2 'asdwq' 1.txt -B n:匹配成功之後,將匹配行的前n行顯示出來 -C n:匹配成功之後,將匹配行的前後n行都顯示出來 -c :只顯示匹配成功的行數 (匹配成功5行 之列印 5) -o :只顯示匹配成功的內容 其餘在同行的內容不顯示 -v :反向過濾 例:匹配除了存在asdwq的行 [root@localhost ~]# grep -n -v 'asdwq' 1.txt -q :靜默輸出 # 不打印出來但是已經匹配成功 -i :忽略大小寫 -l :匹配成功之後,將文字的名稱打印出來 -R/-r :遞迴匹配 如果是資料夾匹配的話不遞迴匹配會報錯。 例:查詢/etc下包含root的檔案 :grep -rl 'root' /etc -E :使用拓展正則 grep -E 等價於 egrep
知識儲備:
$? :上一行命令執行的結果,如果返回0則上一條執行成功,其他數字則代表失敗
wc :匹配行數
引數:
-l :列印匹配的行數
-c :列印匹配的位元組數
在/etc目錄下,有多少個檔案包含root。
grep -rl 'root' /etc/ | wc -l