中文字幕在线观看,亚洲а∨天堂久久精品9966,亚洲成a人片在线观看你懂的,亚洲av成人片无码网站,亚洲国产精品无码久久久五月天

linux常用命令 grep

2018-07-20    來(lái)源:open-open

容器云強(qiáng)勢(shì)上線!快速搭建集群,上萬(wàn)Linux鏡像隨意使用

grep是一種強(qiáng)大的文本搜索工具,它能使用正則表達(dá)式搜索文本,并把匹配的行打印出來(lái)。

一般格式 grep [選項(xiàng)] 基本正則式 [文件]


選項(xiàng):
-c 不輸出內(nèi)容只統(tǒng)計(jì)匹配行數(shù)
grep -c "123" filename 相當(dāng)于 grep "123" filename | wc -l
-i 不區(qū)分大小寫
grep -i "ok" filename 匹配包含ok,Ok,oK,OK的所有行
-h 查詢多文件時(shí)不顯示文件名
grep -h "123" *.txt 不加-h時(shí)會(huì)在每一行前顯示該行所在文件名
-l 查詢多文件是只顯示包含匹配字符的文件名
-n 查詢匹配行及行號(hào)
-v 顯示不包含匹配文本的所有行
-? 同時(shí)顯示匹配行上下的?行

如:grep -2 "123" filename同時(shí)顯示匹配行的上下2行。


正則:
^ 錨定行的開(kāi)始 
如:'^grep'匹配所有以grep開(kāi)頭的行。 
$ 錨定行的結(jié)束 
如:'grep$'匹配所有以grep結(jié)尾的行。 
. 匹配一個(gè)非換行符的字符
如:'gr.p'匹配gr后接一個(gè)任意字符,然后是p。 
* 匹配零個(gè)或多個(gè)先前字符 
如:'a*grep'匹配所有一個(gè)或多個(gè)字符a后緊跟grep的行。 
.*一起用代表任意字符。
[] 匹配一個(gè)指定范圍內(nèi)的字符
如'[Gg]rep'匹配Grep和grep。 
[^] 匹配一個(gè)不在指定范圍內(nèi)的字符
如:'[^A-FH-Z]rep'匹配不包含A-R和T-Z的一個(gè)字母開(kāi)頭,緊跟rep的行。 
\(..\)標(biāo)記匹配字符
如'\(love\)',love被標(biāo)記為1。 
\< 錨定單詞的開(kāi)始
如:'\<grep'匹配包含以grep開(kāi)頭的單詞的行。 
\> 錨定單詞的結(jié)束
如'grep\>'匹配包含以grep結(jié)尾的單詞的行。
\b 單詞鎖定符

如: '\bgrep\b'只匹配grep。 


特殊事項(xiàng):

1.引號(hào)的使用
首先說(shuō)明引號(hào)的作用,在shell中使用grep一般要打引號(hào),例如:"grep" 這樣做,一是防止被誤解為shell命令,二是可以查找多個(gè)單詞的字符串。如,"aaa  bbb"。如果沒(méi)引號(hào),將會(huì)把bbb誤認(rèn)為文件。

一般在grep中輸入字符串參數(shù)是打雙引號(hào),如:$mystr="aaa";grep "$mystr" file,這樣$mystr會(huì)先被替換成aaa,執(zhí)行操作是grep "aaa" file。而在單引號(hào)中,$mystr不被識(shí)別,因此,單引號(hào)一般用在正則表達(dá)式的匹配上,這樣可防止于grep中使用的模式與shell命令中的特殊方 式混淆。


2.egrep和 grep -E的元字符擴(kuò)展

egrep是擴(kuò)展的grep,支持基本正則和擴(kuò)展正則,等同于grep -E。擴(kuò)展集如下:

+ 匹配一個(gè)或多個(gè)先前的字符。
如:'[a-z]+able',匹配一個(gè)或多個(gè)小寫字母后跟able的串。
a|b|c 匹配a或b或c。
如:grep|sed匹配grep或sed
( ) 分組符號(hào)
如:love(able|rs)匹配loveable或lovers。

標(biāo)簽: 搜索 搜索工具

版權(quán)申明:本站文章部分自網(wǎng)絡(luò),如有侵權(quán),請(qǐng)聯(lián)系:west999com@outlook.com
特別注意:本站所有轉(zhuǎn)載文章言論不代表本站觀點(diǎn)!
本站所提供的圖片等素材,版權(quán)歸原作者所有,如需使用,請(qǐng)與原作者聯(lián)系。

上一篇:實(shí)現(xiàn)隨機(jī)生成漢字的Java代碼

下一篇:C++操作sqlite3數(shù)據(jù)庫(kù)示例代碼