1. grep命令引數選項
-? 同時顯示匹配行上下?行,如grep -2 'pattern' filename,
-a ? 同時顯示匹配行下?行grep -a 10 'pattern' filename
-b ? 同時顯示匹配行上?行
-c 列印匹配次數
-e 擴充套件正則egrep
-f 兩個檔案相同行 如,grep -f file1 file2
-f fgrep
-h 不顯示匹配行所在檔名
-h 同時顯示行和檔名
-i 忽略大小寫
-l 只顯示匹配到的檔名
-n 顯示行號
-o 只顯示匹配的字元
-r 遞迴查詢
-v 只顯示不匹配的行
2. grep正規表示式元字符集(基本集)
^ 錨定行的開始 如:'^grep'匹配所有以grep開頭的行。
$ 錨定行的結束 如:'grep$'匹配所有以grep結尾的行。^$一起用代表空行
. 匹配乙個非換行符的字元 如:'gr.p'匹配gr後接乙個任意字元,然後是p。
* 匹配零個或多個先前字元 如:'*grep'匹配所有乙個或多個空格後緊跟grep的行。 .*一起用代表任意字元。
匹配乙個指定範圍內的字元,如'[gg]rep'匹配grep和grep。
[^] 匹配乙個不在指定範圍內的字元,如:'[^a-fh-z]rep'匹配不包含a-r和t-z的乙個字母開頭,緊跟rep的行。
\(..\) 標記匹配字元,如'\(love\)',love被標記為1。
\< 錨定單詞的開始,如:'\ 錨定單詞的結束,如'str\>'匹配包含以str結尾的單詞的行。
x\ 重複字元x,m次,如:'a\'匹配包含5個a的行。
x\ 重複字元x,至少m次,如:'a\'匹配至少有5個a的行。
x\重複字元x,至少m次,不多於n次,如:'a\'匹配5-10個a的行
3. 用於egrep和 grep -e的元字元擴充套件集
+ 匹配乙個或多個先前的字元。如:'[a-z]+able',匹配乙個或多個小寫字母後跟able的串,如loveable,enable,disable等。
? 匹配零個或多個先前的字元。如:'gr?p'匹配gr後跟乙個或沒有字元,然後是p的行。
a|b|c
匹配a或b或c。如:grep|sed匹配grep或sed
() 分組符號,如g(la|oo)d匹配glad或good
()+ 多個重複分組匹配,如a(xy)+b匹配a開頭b結尾中間乙個以上的xy如axyb.axyxyb.axyxyxyb
x,x,x
作用同x\,x\,x\
4. posix字元類
[:alnum:] 0-9, a-z, a-z
[:alpha:] a-z, a-z
[:digit:] 0-9
[:lower:] a-z
[:upper:] a-z
grep命令最全引數詳解
用grep c來統計匹配的行數 grep c 的作用類似grep wc l,不同的是,如果是查詢多個檔案,grep c會統計每個檔案匹配的行數,每行乙個檔案的列出來,而wc l 則列出總的統計數字。另外grep c 要比 grep wc l快一點。grep同時滿足多個關鍵字和滿足任意關鍵字 grep...
grep引數詳解
f 檔案選項。讓grep egrep和fgrep命令列中該選項之後的字串是相關檔案的檔名。該檔案包含了將 在輸入中搜尋的目標。標準的grep不能識別該選項 v 反義選項,使grep選擇所有和模式不匹配的行。c 計數選項。請求包含匹配的搜尋檔案中匹配行的數量。l 列表選項。顯示包含有匹配的檔名的列表,...
grep 命令各引數詳解帶例子
在工作中經常用到grep命令,在此做一下總結。grep 用於匹配檔案中符合條件的行。cat test.txt aaaa bbbbb cccc dddd eeeeeee ffff after context 除了列印匹配的行,還要列印匹配行之後的幾行內容 例如 除了匹配 bb 還要知道該行的後三行內容...