grep及基本正規表示式

2021-08-17 04:45:55 字數 1830 閱讀 8271

grep是一種強大的文字搜尋工具,它能使用特定模式匹配(包括正規表示式)搜尋文字,並預設輸出匹配行。unix的grep家族包括grep、egrep和fgrep。

[root@localhost ~]# cat test

root

rootck

chroot

rroot

roott

rrot

rrtt

rott

root

root

root

[root@localhost ~]# grep "root" test

root

rootck

chroot

rroot

roott

options:

-i:忽略字元大小寫

[root@localhost ~]# grep -i "root" test

root

rootck

chroot

rroot

roott

root

root

root

-o:僅顯示匹配到的字串本身

[root@localhost ~]# grep -o "root" test

root

root

root

root

root

-v:顯示不能被模式匹配到的行

[root@localhost ~]# grep -v "root" test

rrot

rrtt

rott

root

root

root

-q:靜默模式

[root@localhost ~]# grep -q "root" test         #不顯示輸出
-e:僅支援使用擴充套件的正規表示式

-a #:顯示匹配到的行後#行

-b #:顯示匹配到的行前#行

-c #:顯示匹配到的行前後各#行

-f:快速搜尋,等於直接使用fgrep命令

-r:遞迴查詢某個目錄下的所有檔案

.:匹配任意單個字元

[ ]:匹配指定範圍內的任意單個字元

[^ ]:匹配指定範圍外的任意單個字元

用在要指定其次數的字元的後面,用於限制其前面字元出現的次數;預設工作於貪婪模式;

*:匹配其前面的字元任意次;0,1,多次

.*:匹配任意長度的任意字元

\?:匹配其前面的字元0次或1次

\+:匹配其前面的字元1次或多次

\:匹配其前面的字元m次

\:匹配其前面的字元至少m次,至多n次;

^:行首錨定

$:行尾錨定

^pattern$:用於pattern來匹配整行

單詞:非特殊字元組成的連續字元都稱為單詞;

\《或\b:詞首錨定

\>或\b:詞尾錨定

\:匹配完整單詞

\(\):將乙個或多個字元**在一起,當作乙個整體進行處理;

note:分組括號中的模式匹配到的內容會被正規表示式引擎自動記錄於內部的變數中,這些變數為:

\1:模式從左側起,第乙個左括號以及與之匹配的右括號之間的模式所匹配到的字元

\2:模式從左側起,第二個左括號以及與之匹配的右括號之間的模式所匹配到的字元

......

grep 及 正規表示式

grep 根據模式搜尋文字,並將符合模式的文字行顯示出來。pattern 文字字元和正規表示式的元字元組合而成的匹配條件 i 忽略大小寫 color 顯示標註顏色 v 顯示沒有被模式匹配到的行 o 只顯示被匹配到的字串 任意長度的任意字元 任意單個字元 指定範圍內的 指定範圍外的 元字元 匹配任意單...

grep及正規表示式

grep,egrep,fgrep grep 根據模式搜尋文字,並將符合模式的文字行顯示出來。pattern 文字字元和正規表示式的元字元組合而成匹配條件 grep options pattern file.i color v 顯示沒有被模式匹配到的行 o 只顯示被模式匹配到的字串 任意長度的任意字元...

grep及正規表示式

grep grep global search regular expression and print out the line 作用 文字搜尋工具,根據使用者指定的 模式 對目標文字逐行進行匹配檢查 列印匹配搭配的行 模式 由正規表示式字元及文字字元所編寫的過濾條件 正規表示式 regexp 由...