shell 三劍客—grep

想才會有發表於2020-10-18

shell三劍客—grep

 grep是行過濾工具;用於關鍵字進行過濾

用法:

**grep [選項] ‘關鍵字’ 檔名**
OPTIONS
-i不區分大小寫
-v查詢不包含指定內容的行,反向選擇
-w按單詞搜尋
-o列印匹配關鍵字
-c統計匹配到的行數
-n顯示行號
-r逐層遍歷目錄查詢
-A顯示匹配行及後面多少行
-B顯示匹配行及前面多少行
-C顯示匹配行前後多少行
-l只列出匹配的檔名
-L列出不匹配的檔名
-e使用正則匹配
-E使用擴充套件正則匹配
^key以關鍵字開頭
key$以關鍵字結尾
^$匹配空行
–color=auto可以將找到的關鍵詞部分加上顏色的顯示

實踐

grep -i root 檔名							忽略大小寫匹配包含root的行
grep -w ftp  	檔名					    精確匹配ftp單詞
grep -w hello 檔名 						精確匹配hello單詞;自己新增包含hello的行到檔案
grep -wo ftp 檔名 						列印匹配到的關鍵字ftp
grep -n root 檔名 						列印匹配到root關鍵字的行好
grep -ni root 檔名 						忽略大小寫匹配統計包含關鍵字root的行
grep -nic root 檔名						忽略大小寫匹配統計包含關鍵字root的行數
grep -i ^root 檔名 						忽略大小寫匹配以root開頭的行
grep bash$ 檔名 							匹配以bash結尾的行
grep -n ^$ 檔名 							匹配空行並列印行號
grep ^# 檔名								匹配以#號開頭的行
grep -v ^# 檔名							匹配不以#號開頭的行
grep -A 5 mail 檔名 				 		匹配包含mail關鍵字及其後5行
grep -B 5 mail 檔名				 		匹配包含mail關鍵字及其前5行
grep -C 5 mail 檔名 						匹配包含mail關鍵字及其前後5

相關文章