grep和正規表示式

2021-07-06 04:36:35 字數 1558 閱讀 1906

常用引數:

-f《規則檔案》  --file=《規則檔案》   #指定規則檔案,其內容含有乙個或多個規則樣式,讓grep查詢符合規則條件的檔案內容,格式為每行乙個規則樣式。

grep規則表示式:

^: 錨定行的開始 如: ^grep匹配所有以grep開頭的行

$: 錨定行的結束,如:grep$匹配所有以grep結尾的行

.: 匹配

乙個非換行符的字元,如gr.p匹配gr後接乙個任意字元,然後是p

*: 匹配

零個或多個先前字元

,*grep匹配所有乙個或多個空格後緊跟grep的行

: 匹配

乙個指定範圍內的字元,如 :[gg]rep匹配grep,grep;

[^]: 匹配

乙個 不在指定範圍內的字元,[^a-fh-z]rep匹配不包含a-r和t-z的乙個字母開頭,緊跟rep的行。

xargs -0 -a a.txt|grep ^grep

ifconfig eth0|grep "[0-9]\\.[0-9]\\.[0-9]\\.[0-9]\"

\(..\):標記匹配字元,如:\(love\),love被標記為1

\<: 錨定單詞的開頭, 如:\包含以grep開頭的單詞的行

xargs -0 -a a.txt|grep "\

\>:錨定單詞的結束: 如grep\>匹配

包含以grep結束的單詞的行

x\:重複字元x,m次,如0\匹配

包含5個0的行

。xargs -0 -a a.txt|grep "l\" 

x\:重複字元x,至少m次,如:o\匹配

包含至少5個o的行。

x\:重複字元x,至少m次,至多n次,如:o\匹配

包含5-10個o的行。

\w:匹配文字和數字字元,也就是[a-za-z0-9],如:g\w*p匹配g後跟0或多個字元或數字+任意多個字元+p

posix 字元[:alnum:]    #文字數字字元   

[:alpha:]    #文字字元   

[:digit:]    #數字字元  

xargs -0 -a a.txt|grep "[[:digit:]]"

[:lower:]    #小寫字元   

[:upper:]    #大寫字元

[:graph:]    #非空字元(非空格、控制字元)   

[:cntrl:]    #控制字元   

[:print:]    #非空字元(包括空格)   

[:punct:]    #標點符號   

[:space:]    #所有空白字元(新行,空格,製表符)   

[:xdigit:]   #十六進製制數字(0-9,a-f,a-f)  

如:root@harmonywin:/home/test# grep "[[:digit:]]" a.txt 

grep111

grep222

root@harmonywin:/home/test# grep "[a-z]\" a.txt 

hello

world

grep和正規表示式

grep語法 正規表示式元字元 擴充套件正規表示式元字元 grep grep global search regular expression re and print out the line 是一款文字過濾 模式 pattern 工具。作用 文字搜尋工具,根據使用者指定的 模式 對目標文字逐行進...

正規表示式和grep

正規表示式 regular expression,re 是一種字元模式,用於在查詢過程中匹配指定的字元。在大多數程式裡,正規表示式都被置於兩個正斜槓之間 例如 lv o0 e 就是由正斜槓界定的正規表示式,它將匹配被查詢的行中任何位置出現的相同模式。在正規表示式中,元字元是最重要的概念。shell萬...

grep和正規表示式

正規表示式示例表 字 符 意 義 示 例 任意長度的字串。a 表示 空字串 aaaa a 長度為0或者1的字串。a?表示 空字串和a。長度為乙個或者多個的字串。a 表示 a aa aaaaaa 任意字元。a.表示 a後跟任意字元。代表上一規則重複數目 包含一組匹配花括號,裡面有兩個數字和乙個字元,表...