linux命令之grep命令

2021-07-10 08:07:00 字數 3910 閱讀 3283

grep

命令是乙個十分強大的文字搜尋命令,它全面的搜尋滿足正規表示式文字內容並且可

以把對應的行

以及行號列印出來

基本格式:

grep[

選項][

模式][

檔案或者目錄]

[模式]是什麼呢?模式就是要搜尋的文字內容的正規表示式,當然也可以時最簡單的最直接的

文字。輸出是什麼呢,

一般的輸出的是滿足有所要搜尋內容的所有行,但是根據[選項

]內容不同,

也可以之輸出檔名或者滿足行數。 [

選項]:

-n列出所有匹配的行,輸出的行帶上行標

-l只輸出檔名

-r遞迴搜尋,不僅搜當前目錄,還有子目錄

-w匹配整個詞 -v

:反向選擇,亦即顯示出沒有

'搜尋字串

'內容的那一行

-i:不區分大小寫 此外

--color=auto

可以給出滿足模式的文字上色。 [

例子]接下來,趕緊上例子啦!

為了方便看,藍色的表示模式,紅色的表示結果 1.

檢視size.c

檔案中包含

return

或者return0的行

melody@melody-hp-compaq-dc7900-small-form-factor:~/workspace$grep-n

returnsize.c

5:return0;

melody@melody-hp-compaq-dc7900-small-form-factor:~/workspace$grep -n"return 0"size.c

5:return0;

melody@melody-hp-compaq-dc7900-small-form-factor:~/workspace$grep -nreturn 0 size.c

grep:0:

沒有那個檔案或目錄

size.c:5: return0;

注意:當模式中有空格的時候一定要打」」引起來,不然會出現沒有那個檔案或目錄

的錯誤

2.檢視目錄下包含

return0

的檔案,只輸出檔名

melody@melody-hp-compaq-dc7900-small-form-factor:~/workspace$grep

-l"return 

0"/home/melody/workspace/

grep:/home/melody/workspace/:

是乙個目錄

melody@melody-hp-compaq-dc7900-small-form-factor:~/workspace$grep

-r-l

"return 

0"/home/melody/workspace/

/home/melody/workspace/lookhb.c

/home/melody/workspace/size.c

/home/melody/workspace/main.c

/home/melody/workspace/mainl.c

注意這個例子中,當為目錄時,一定要加

-r遞迴搜尋 3.

檢視目錄下包含

return0

的檔案,輸出檔名加相應的行:

melody@melody-hp-compaq-dc7900-small-form-factor:~/workspace$grep -r "return 0" /home/melody/workspace/

/home/melody/workspace/lookhb.c: return0;

/home/melody/workspace/size.c: return0;

/home/melody/workspace/main.c: return0;

/home/melody/workspace/mainl.c: return0;

melody@melody-hp-compaq-dc7900-small-form-factor:~/workspace$grep -r "return 0" /home/melody/workspace/ -n

/home/melody/workspace/lookhb.c:5: return0;

/home/melody/workspace/size.c:5:return0;

/home/melody/workspace/main.c:17: return0;

/home/melody/workspace/mainl.c:15: return0;

接下來,上一些有正規表示式例子

總結一下:限定行首

(^)/

行尾字元

($),限定一些特定的字元」

..[..]..」,

精確匹配

(/),

匹配重複字元

(「*」)

melody@melody-hp-compaq-dc7900-small-form-factor:~/workspace$grep -n^ i

/home/melody/workspace/size.c

2:intmain()

melody@melody-hp-compaq-dc7900-small-form-factor:~/workspace$grep -n ^

/home/melody/workspace/size.c

1:#include

2:intmain() 3:

^i可以就這樣寫,也可以加單引號,注意是單引號!!

匹配特定的字元

中滿足其中之一就可以了。

eg.

melody@melody-hp-compaq-dc7900-small-form-factor:~/workspace$grepp[ea]tsize.c -n

4://pat;

5: //pet;

模擬:melody@melody-hp-compaq-dc7900-small-form-factor:~/workspace$grep[^a]size.c--color=always

#include

intmain()

melody@melody-hp-compaq-dc7900-small-form-factor:~/workspace$grep^asize.c--color=always

abcds;

melody@melody-hp-compaq-dc7900-small-form-factor:~/workspace$grep //.../ size.c --color=always

//ko //pat;

//.../

表示的是什麼意思呢?就是以

//字元開始的中間有三個其他任意字元(三個

.),後面還接了個/的。

精確匹配:

melody@melody-hp-compaq-dc7900-small-form-factor:~/workspace$grep -n'ab\'size.c

8:aaaaaaaaaabababababababbabaababa;

注意,一定要加引號。

melody@melody-hp-compaq-dc7900-small-form-factor:~/workspace$grep -n ab* size.c -i

2:intmain()

4:-----abcds;

5:--haha;

6:ababaaaab;

7:ab;

8:aaaaaaaaaabababababababbabaababa;

9://ko //pat;

12: printf("%d\n",sizeof("abc"));

ab*-i

就是指的是以

a開頭,出現

0次或者多次

b的字串,不區分大小寫!

Linux命令之 grep命令》

1.作用 linux系統中grep命令是一種強大的文字搜尋工具,它能使用正規表示式搜尋文字,並把匹配的行列印出來 也可以通過管道重定向流輸出到檔案中 grep全稱是global regular expression print,表示全域性正規表示式列印,它的使用許可權是所有使用者。2.格式 grep...

Linux命令之grep命令

grep命令是文字搜尋命令,它可以正規表示式搜尋文字,也可從乙個檔案中的內容作為搜尋關鍵字。grep的工作方式是這樣的,它在乙個或多個檔案中搜尋字串模板。如果模板包括空格,則必須被引用,模板後的所有字串被看作檔名。搜尋的結果被送到標準輸出,不影響原檔案內容。語法 grep option patter...

Linux命令學習之grep命令

格式 grep options pattern file grep命令堆在輸入或指定的檔案中查詢包含匹配指定模式的字元的行。grep的輸出就是包含了匹配模式的行。原始檔內容 ocetl yxddn65 demo more file12 46315 9510 ocetl yxddn65 demo gr...