grep
1.作用
grep命令可以指定文件中搜索特定的內容,并將含有這些內容的行標準輸出。grep全稱是Global Regular Expression Print,
表示全局正則表達式版本,它的使用權限是所有用戶。
2.格式
grep [options]
3.主要參數(shù)
[options]主要參數(shù):
-c:只輸出匹配行的計數(shù)。
-I:不區(qū)分大小寫(只適用于單字符)。
-h(huán):查詢多文件時不顯示文件名。
-l:查詢多文件時只輸出包含匹配字符的文件名。
-n:顯示匹配行及行號。
-s:不顯示不存在或無匹配文本的錯誤信息。
-v:顯示不包含匹配文本的所有行。
pattern正則表達式主要參數(shù):
\:忽略正則表達式中特殊字符的原有含義。
^:匹配正則表達式的開始行。
$: 匹配正則表達式的結束行。
\<:從匹配正則表達式的行開始。
\>:到匹配正則表達式的行結束。
[ ]:單個字符,如[A]即A符合要求 。
[ - ]:范圍,如[A-Z],即A、B、C一直到Z都符合要求 。
. :所有的單個字符。
* :有字符,長度可以為0。
正則表達式是Linux/Unix系統(tǒng)中非常重要的概念。正則表達式(也稱為“regex”或“regexp”)是一個可以描述一類字符
串的模式 (Pattern)。如果一個字符串可以用某個正則表達式來描述,我們就說這個字符和該正則表達式匹配(Match)
。這和DOS中用戶可以使用通配符 “*”代表任意字符類似。在Linux系統(tǒng)上,正則表達式通常被用來查找文本的模式,以
及對文本執(zhí)行“搜索-替換”操作和其它功能。
4.應用實例
查詢DNS服務是日常工作之一,這意味著要維護覆蓋不同網絡的大量IP地址。有時IP地址會超過2000個。如果要查看
nnn.nnn網絡地址,但 是卻忘了第二部分中的其余部分,只知到有兩個句點,例如nnn nn..。要抽取其中所有nnn.nnn IP地
址,使用[0-9 ]\{3 \}\.[0-0\{3\}\。含義是任意數(shù)字出現(xiàn)3次,后跟句點,接著是任意數(shù)字出現(xiàn)3次,后跟句點。
$grep '[0-9 ]\{3 \}\.[0-0\{3\}\' ipfile
補充說明,grep家族還包括fgrep和egrep。fgrep是fix grep,允許查找字符串而不是一個模式;egrep是擴展grep,支持基
本及擴展的正則表達式,但不支持\q模式范圍的應用及與之相對應的一些更加規(guī)范的模式。
2015職稱計算機考試書PowerPoint2007中 .. 定價:¥45 優(yōu)惠價:¥42 更多書籍 | |
2015年全國職稱計算機考試教材(2007模 .. 定價:¥225 優(yōu)惠價:¥213 更多書籍 |