1. 程式人生 > >Linux之文本搜索工具grep

Linux之文本搜索工具grep

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