指令語法:
grep [options] ’PATTERN’ [FILE...] pattern 為所指定的比對樣式。
參數說明:
-c:列出符合比對樣式的行數。
-E:加此參數可支援 extended RE。
-i:忽略 pattern 中的大小寫。
-n:將符合搜尋條件的那幾行附上行號列印出來。
-v:把不符合搜尋條件的那幾行列印出來。
範例:
[barry@rhel ~]$ cat file barry marytina
xyzbrry 123xyz xyz
123aba*rry
user01 wcky auser02 test good
buser03 nice priority cuser04 lpi
axyzbuser05 www lpi org
xyzuser06 study area abc 123!
123abcxyz
ab3 cwy
[barry@rhel ~]$ export LANG=C
[barry@rhel ~]$ grep 'ab..c' file
[barry@rhel ~]$ grep 'ba*rry' file
[barry@rhel ~]$ grep 'ba\*rry' file
[barry@rhel ~]$ grep '[abc]user' file
[barry@rhel ~]$ grep '[^bc]user' file
[barry@rhel ~]$ grep '^123' file
[barry@rhel ~]$ grep 'xyz$' file
[barry@rhel ~]$ grep '^$' file
→ 列出 file 內容中之空白行。
[barry@rhel ~]$ grep '^xyz$' file
→ 找出 file 內容裡剛好是 xyz 字串的。
[barry@rhel ~]$ grep -E 'ba?rry' file
[barry@rhel ~]$ grep -E 'ba+rry' file
[barry@rhel ~]$ grep -E 'xyz|123' file
[barry@rhel ~]$ grep -E 'a(xyz)*b' file
→ ab 字母之中的 xyz 字串可出現 0~n 次。
[barry@rhel ~]$ grep -vc 'bash' /etc/passwd
→ 計算檔案內容不含 bash 的共幾行。
[barry@rhel ~]$ grep -ni 'BASH' /etc/passwd
→ 列出包含 bash(不分大小寫)字串的那幾行,並附上行號。
留言列表