linux中的grep使用技巧

2021-10-12 19:57:30 字數 2931 閱讀 9292

總結定義:grep命令用於查詢檔案中的特定模式,並輸出包含搜尋模式的所有結果,用於快速搜尋匹配模式的簡單工具

grep -o時,命令列只輸出匹配的文字

grep -v時,命令列只輸出沒有匹配的文字行

grep -r -r時,匹配目錄下的所有檔案

grep -f和-v時,一般用於對比兩個檔案,輸出兩個檔案相同行和不同行

grep -c時,用於計算某個字串出現的次數

grep -i時,忽略大小寫

grep -n時,輸出行號

grep -w時候,被匹配的文字只能是指定的單詞,而不能是單詞中的某一部分

grep -a 10

'***'時,取該出現的字串後十行資料(after)

grep -b 10

'***'時,取該出現的字串前十行資料(before)

grep -c 10

'***'時,取取該出現的字串前後十行資料(context)

[root@anlysis data]# cat study 

andy china sum 55590

andy canada sum 5590

andy america sum 55590

andy japan sum 55590

andy keor sum 55590

1、grep -o時,命令列只輸出匹配的文字

[root@anlysis data]# grep -o 'andy' study

andy

andy

andy

andy

andy

2、grep -v時,命令列只輸出沒有匹配的文字行

[root@anlysis data]# grep -v 'china' study

andy canada sum 5590

andy america sum 55590

andy japan sum 55590

andy keor sum 55590

3、grep -r -r時,匹配目錄下的所有檔案(這裡複製了乙份一樣的檔案,所以是兩行)

[root@anlysis data]# grep -r 'china'

/data/data/

/data/data/study:andy china sum 55590

/data/data/twostudy:andy china sum 55590

4、grep -c時,用於計算某個字串出現的次數

[root@anlysis data]# grep -c 'andy' study

5、grep -i時,忽略大小寫

[root@anlysis data]# grep -i 'andy' twostudy

andy china sum 55590

andy canada sum 5590

andy america sum 55590

andy japan sum 55590

andy keor sum 55590

6、grep -n時,輸出行號

[root@anlysis data]# grep -n 'andy' study

1:andy china sum 55590

2:andy canada sum 5590

3:andy america sum 55590

4:andy japan sum 55590

5:andy keor sum 55590

7、grep -w時候,被匹配的文字只能是指定的單詞,而不能是單詞中的某一部分(可以看到一定要符合一模一樣的才會列印)

[root@anlysis data]# grep 'and' study

andy china sum 55590

andy canada sum 5590

andy america sum 55590

andy japan sum 55590

andy keor sum 55590

[root@anlysis data]# grep -w 'andy' study

andy china sum 55590

andy canada sum 5590

andy america sum 55590

andy japan sum 55590

andy keor sum 55590

[root@anlysis data]# grep -w 'and' study

[root@anlysis data]#

8、grep -a 2

'***'時,取該出現的字串前2行資料(after)

[root@anlysis data]# grep -a 2

'canada' study

andy canada sum 5590

andy america sum 55590

andy japan sum 55590

9、grep -b 2

'***'時,取該出現的字串前2行資料(before)

[root@anlysis data]# grep -b 2

'japan' study

andy canada sum 5590

andy america sum 55590

andy japan sum 55590

10、grep -c 2

'***'時,取取該出現的字串前後2行資料(context)

[root@anlysis data]# grep -c 1

'japan' study

andy america sum 55590

andy japan sum 55590

andy keor sum 55590

持續更新中。。。。。

linux中grep的使用

核心 grep的基本操作 grep是一種強大的文字搜尋工具,它能使用正規表示式搜尋文字,並把匹配的行列印出來 選項 a 不要忽略二進位制資料 a 顯示列數 除了顯示符合範本樣式的那一行之外,並顯示該行之後的內容 b 在顯示符合范文樣式的那一行之外,並顯示該行之前的內容。c 計算符合范文樣式的列數 c...

Linux之grep的使用

基本介紹 linux系統中grep命令是一種強大的文字搜尋工具,它能使用正規表示式搜尋文字,並把匹 配的行列印出來。grep全稱是global regular expression print,表示全域性正規表示式版本,它的使用許可權是所有使用者。grep的工作方式是這樣的,它在乙個或多個檔案中搜尋...

linux中grep的用法

過濾多個關鍵字 grep e root mysql etc passwd root 0 0 root root bin bash operator 11 0 operator root sbin nologin mysql 500 500 home mysql sbin nologin 排除多個關鍵...