grep命令

1.作用

Linux系統中grep命令是一種強大的文本搜索工具,它能使用正則表達式搜索文本,並把匹 配的行打印出來。grep全稱是Global Regular Expression Print,表示全局正則表達式版本,它的使用權限是所有用戶。


2.格式

grep [options]


用到的四個文件名:

file1:  hello world
file2:  hello Jim
file3:  hello lucy
file4:  192.0.1222.45
    192.1.45
    192.23.46.289 41
    192.168.1.168
    109.*83.8.90
    l32.890.54.20
file5:  haha

3.主要參數及運用

(1).grep最簡單的使用方法,匹配一個詞:grep word filename

wKioL1ds94mDyTQMAAAOBGtWG34442.png

(2). 從多個文件中匹配:grep word filename1 filenam2 filename3

wKioL1ds9Lej3jtBAAAcl0LVQl0050.png

(3). -o:只打印匹配的字符

wKiom1ds9vfgLGpMAAAMn7upGCk992.png

(4). -v:打印除匹配行之外的其他行

wKiom1ds_TSR0CTQAAAYi5lANu4525.png

(5).-E:使用擴展正則表達式

wKioL1ds_XCS9IT5AAAOy71IQ_Y812.png

(6). -e:匹配多個字符串模式

wKioL1dtB6fiMQYQAAAVDtiTnRM389.png

(7). -c:統計匹配字符串的行數

wKiom1ds_uOQQ9iWAAAKfw8v79o591.png

(8). -n:顯示行號

wKioL1dtAuajYtWCAAAL6iU6cPg136.png

(9). -b:打印出匹配的字符串對其所在的行的起始位置的偏移量(從0開始),通常配合-o使用

wKiom1dtBCfQasIdAAAWbkD90cg766.png

(10). 當字符串在多個文件中匹配時,-l選項將只打印文件名

(11). -L與-l相對,只打印不匹配的文件名

wKioL1dtBQ3jCvRtAAAdf5HkfR4071.png

(12). -i:忽略大小寫

wKiom1dtBerjwSFhAAARkORADKc748.png

(13). 遞歸搜索

wKioL1dtBmqz5pMdAAATD5sqWMU317.png

(14). 打印匹配行上下文信息:

-A n :打印匹配行及其後n行信息;

-B n:打印匹配行及其前n行信息;

-C n:打印匹配行及其前後n行信息;

wKiom1dtDAziSLR8AAA2RSQ5YZE825.png

(15). -q:進入靜默模式,該模式下,grep命令運行目的僅僅是執行一個條件測試,通常在腳本中使用。通過檢查其返回值進行下一步操作。

wKioL1dtHHHDV_WdAAApvsYMK-g045.png

(16)-Z選項在輸出匹配文件名時將以/0結尾配合xargs -0可以發揮很多作用,例如刪除匹配某個模式的文件,-Z通常和-l結合使用。

wKioL1dtJXOzhFW8AAAp1U5URso179.png

(刪除以file開頭的文件,file5被刪除)

4.grep的選項大全

-a 不要忽略二進制數據。 
-A<顯示列數> 除了顯示符合範本樣式的那一行之外,並顯示該行之後的內容。 
-b 在顯示符合範本樣式的那一行之外,並顯示該行之前的內容。 
-c 只輸出匹配行的計數。 
-C<顯示列數>或-<顯示列數> 除了顯示符合範本樣式的那一列之外,並顯示該列之前後的內容。 
-d<進行動作> 當指定要查找的是目錄而非文件時,必須使用這項參數,否則grep命令將回報信息並停止動作。 
-e<範本樣式> 指定字符串作爲查找文件內容的範本樣式。 
-E 將範本樣式爲延伸的普通表示法來使用,意味着使用能使用擴展正則表達式。 
-f<範本文件> 指定範本文件,其內容有一個或多個範本樣式,讓grep查找符合範本條件的文件內容,格式爲每一列的範本樣式。 
-F 將範本樣式視爲固定字符串的列表。 
-G 將範本樣式視爲普通的表示法來使用。 
-h 在顯示符合範本樣式的那一列之前,不標示該列所屬的文件名稱。 
-H 在顯示符合範本樣式的那一列之前,標示該列的文件名稱。 
-i 不區分大小寫(用於單字符)。 
-l 列出文件內容符合指定的範本樣式的文件名稱。 
-L 列出文件內容不符合指定的範本樣式的文件名稱。 
-n 在顯示符合範本樣式的那一列之前,標示出該行的行號。 
-q 不顯示任何信息。 
-R/-r 此參數的效果和指定“-d recurse”參數相同。 
-s 不顯示錯誤信息。 
-v 反轉查找,不顯示不包含匹配文本的所以有行。 
-w 只顯示全字符合的列。 
-x 只顯示全列符合的列。 
-y 此參數效果跟“-i”相同。 
-o 只輸出文件中匹配到的部分。

推薦網址:http://www.cnblogs.com/end/archive/2012/02/21/2360965.html

http://man.linuxde.net/grep


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章