grep的使用

grep  是文本過濾工具,支持使用正則表達式和擴展表達式,根據編寫的模式過濾目標文本


grep 語法格式:

grep [options] pattern file


options:


--color=auto 匹配到的文本着色高亮顯示

d508db1b833903be0debe1c7923adcb8.png-wh_


-o 僅顯示匹配到的字符

fe5e52c8eaba4fd993e2094b37d50671.png-wh_


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

c6bccfcbea73b63510876d9683204d93.png-wh_


-q 不輸出任何信息

echo $? 檢驗命令是否執行成功,回顯是0,表示成功

27166662d8964d1796cc61bbead7e516.png-wh_


-A#  顯示匹配到的行後#行

-B#  顯示匹配到的行前#行

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

這裏只展示  -A#

df015e1b2e04c94bca3e16aedd801a73.png-wh_


基本正則表達式元字符


     . : 匹配任意單個字符

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

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

               [[:upper:]]:所有大寫字母

               [[:lower:]]:所有小寫

               [[:alpha:]]:所有字母

               [[:digit:]]:所有數字

               [[:alnum:]]:所有字母和數字

               [[:space:]]:所有空白字符

                    [[:punct:]]:所有標點符號


匹配次數:用在要指定其出現的次數的字符的後面,用於限制其前面字符出現的次數,默認工作於貪婪模式,如果執行失敗,則加上‘’引用


*:匹配其前面字符任意次;01多次

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

\?:匹配其前面的字符0次或1次;即其前面的字符可有可無,需要加‘’引用,例如'a\?'e

\*:匹配其前面的字符1次或多次,即前面的字符至少出現一次

 \{m\}:匹配其前面的字符m次;

\{m,n\}:匹配其前面的字符至少m次,至多n

\{0,n\}:至多n

\{m,\}:至少m

48871ce38d71740e93e60fc8fb46e851.png-wh_


位置錨定:

^:行首錨定:^後面的字符出現在行首

$:行尾錨定:$前面的字符出現在行尾

^PATTERN$:PATTERN來匹配整行

^$:空白行

^[[:space:]]*$:空行或者包含空白字符的行

05ec52289f64a358be559a6740b9ead6.png-wh_


單詞錨定

\<\b:詞首錨定,錨定單詞在行首 ‘\<*’

\>\b:詞尾錨定,錨定單詞在行尾

\<PATTERN\>:匹配完整單詞


分組

\(\):將一個或多個字符捆綁在一起,當做一個整體進行處理

\(xy\)*








發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章