Linux之文本搜索工具grep
Linux之文本搜索工具grep
grep功能:根據模式搜索文本,並將符合模式的文本行顯示出來
PATTERN:模式,即文本字符和正則表達式的元字符組合而成的匹配條件
1 通配符:
*:任意長度的任意字符
?:任意單個字符
[]:匹配指定範圍內的任意單個字符
[^]:與[]相反
2 正則表達式:
元字符:
.:匹配任意單個字符
*:匹配次數(工作在貪婪模式下,盡可能長的匹配),
匹配其前面的字符任意個
.*:任意長度的任意字符
\?:匹配其前面的字符1次或0次
\{m,n\}:匹配其前面的字符至少m次,至多n次
\{1,\}:匹配其前面的字符至少1次
位置錨定:
^:錨定行首,此字符後面的任意內容必須出現在行首
$:錨定行尾,此字符前面的任意內容必須出現在行尾
^$:空白行
\<或\b:其後面的任意字符必須作為單詞的首部出現
\>或\b:其前面的任意字符必須作為單詞的尾部出現
分組
\(string\):string當做一組字符,一個整體,用於後向引用
後向引用
\1:引用第一個左括號以及與之對應的右括號所包括的所有內容
\2
\3
grep基本用法:
grep [OPTIONS] PATTERN [FILE...]
OPTIONS
-i:忽略大小寫
--color:將搜索到的字符標色顯示出來
-v:顯示沒有被模式匹配到的行
-o:只顯示被匹配到的字符串
-A #:表示grep匹配到的行及之後的#行
-B #:表示grep匹配到的行及之前的#行
-C #:表示grep匹配到的行及前後的#行
-E:匹配擴展正則表達式
擴展正則表達式 egrep
次數匹配
+:匹配其前面的字符至少1次
分組
():括號內的為一個整體
本文出自 “術業有專攻” 博客,請務必保留此出處http://fuvip.blog.51cto.com/9276123/1981118
Linux之文本搜索工具grep