linux grep 我最喜歡的命令

2022-05-16 06:36:10 字數 1799 閱讀 3484

**

1、 引數: 

-i :忽略大小寫 

-c :列印匹配的行數 

-l :從多個

檔案中查詢包含匹配項 

-v :查詢不包含匹配項的行 

-n:列印包含匹配項的行和行標 

2、re(正規表示式) 

\ 忽略正規表示式中特殊字元的原有含義 

^ 匹配正規表示式的開始行 

$ 匹配正規表示式的結束行 

\< 從匹配正規表示式的行開始 

\> 到匹配正規表示式的行結束 

[ ] 單個字元;如[a] 即a符合要求 

[ - ] 範圍 ;如[a-z]即a,b,c一直到z都符合要求 

. 所有的單個字元 

* 所有字元,長度可以為0

(4)顯示非匹配的行

grep -vn "48" data.doc      #輸出所有不包含48的行

(4)顯示非匹配的行

grep -vn "48" data.doc      #輸出所有不包含48的行

(5)大小寫敏感

grep -i "ab" data.doc       #輸出所有含有ab或ab的字串的行

4, 正規表示式的應用

(1)正規表示式的應用 (注意:最好把正規表示式用單引號括起來)

grep '[239].' data.doc      #輸出所有含有以2,3或9開頭的,並且是兩個數字的行

(2)不匹配測試

grep '^[^48]' data.doc      #不匹配行首是48的行

(3)使用擴充套件模式匹配

grep -e '219|216' data.doc

(4) ...

這需要在實踐中不斷應用和總結,熟練掌握正規表示式。

5, 使用類名

可以使用國際模式匹配的類名:

[[:upper:]]   [a-z]

[[:lower:]]   [a-z]

[[:digit:]]   [0-9]

[[:alnum:]]   [0-9a-za-z]

[[:space:]]   空格或tab

[[:alpha:]]   [a-za-z]

(1)使用

grep '5[[:upper:]][[:upper:]]' data.doc     #查詢以5開頭以兩個大寫字母結尾的行

舉例:# grep 'the' size.txt 

the test file 

their are files 

# grep '\\>' size.txt 

the test file 

# grep '\' size.txt 

the test file 

# grep '\<[tt]he\>' size.txt 

the test file

自己的實踐: 

顯示行內容和行號:

$grep -n "^奪寶" 1.word

16:奪寶記

1219:奪寶計上計

2220:奪寶

4000:奪寶幸運星

在當前資料夾顯示已.log結尾的所有檔案:

$ grep -l *.log

10.log

11.log

12.log

22.log

23.log

24.log

2.log

3.log

我最喜歡的對話

海姆的監牢中 乙個男人被鎖鏈鎖在監獄裡 蘭斯 塔泰亞 恩 我很驚訝你竟然還活著 我想單獨跟這個人呆一會兒 從城堡外面傳來的聲音 叛軍 接近!快去街道防守!蘭斯 塔泰亞 你聽到了嗎 贊諾比亞的聖騎士 蘭斯 漢密爾頓 你們的失敗只是時間問題而已 蘭斯 塔泰亞 我並不在乎誰統治萬萊利亞 你知道的吧 對嗎?...

我最喜歡的導演 諾蘭

1970年7月30日,克里斯多福 諾蘭出生於英國倫敦,小時候經常在美國和英國兩邊跑,所以口音偏英式,但有時說話會突然轉成美式音。他對於兩國的文化和生活習慣都很熟悉。1977年,七歲的諾蘭就用父親的超8攝影機拍攝自己的玩具兵人,開始了最早的電影創作。認識他是從 致命魔術 開始,他所展示的科幻的把握和獨...

我最喜歡的一首詩

多年前在網路上偶然看見的,記不得作者了。好象是聊天室中的某男靈感乍現 人品爆發,即興創作。我一看笑噴了 你來自雲南元謀,我來自北京周口。握緊你毛絨絨的手,愛情,讓我們直立行走!想象中,二三百萬年前,古木蔥隆的背景前,乙隻毛絨絨的雄性猿人,握緊另外乙隻毛絨絨的雌性猿人的手,目露堅毅,身上猶帶戰後的斑斑...