正則匹配:this
grep -E "[a-z]+"遞歸
只輸出匹配到的文本:test
echo this is a line. | grep -o -E "[a-z]+\."file
統計匹配到的行數:搜索
grep -c grep
匹配以外的行:統計
grep -v樣式
多級目錄中遞歸搜索:文件
grep "text" . -R -n
忽略大小寫:
grep -i
匹配多個樣式:
grep -e "this" -e "line"
grep中包括貨排除文件:
grep "main()" . -r --include *.{c,cpp}
grep "main()" . -r --exclude "README"
刪除grep出的文件:(xargs -0表示以0值結尾的,防止有些文件名中有空格,被看成兩個文件名)
grep "test" file* -lz |xargs -0 rm
靜默輸出:
grep -q
打印匹配文本以前貨以後的行:
seq 10 | grep 5 -A 3 //以前
seq 10 | grep 5 -B 3 //以後
seq 10 | grep 5 -C 3 //先後
摘自:《Linux Shell 腳步攻略》