文本查找的需要:grep egrep fgrep(fastgrep)
grep:全面搜尋 global research 根據某個模式,去搜尋文本,并将符合模式的文本行顯示出來
pattern:文本字元和正則表達
grep [OPTIONS] PATTERN [FILE...]
-i:忽略大小寫
--color:以顔色來識别
-v:顯示沒有被模式比對到的行
-o:隻顯示被模式比對到的字元串
-E:使用擴充正規表達式(egrep=grep -E)
-A跟數字:顯示被比對到以及向下兩行
-B跟數字:顯示被比對到以及向上兩行
-C跟數字:顯示被比對到以及向上下兩行
grep ‘root’ /etc/passwd
沒有正規表達式,不用“”也行
單引号表示強引用,雙引号表示弱引用,隻要不涉及變量引用,單雙引号都可以
正規表達式:REGular EXPression簡寫REGEXP
元字元:
.:比對任意單個字元
比對次數(貪婪模式)
*:比對其前面的字元任意次
a,b,ab,aab,acb,adb,amnb
a*b
a.*b
.*:任意長度的任意字元
\?:比對其前面的字元1次或0次(可有可無的)
\{m,n\}:比對其前面的字元至少m次,至多n次
\{1,\}
\{0,3\}
位置錨定:
^:錨定行首,此字元後面的任意内容必須出現在行首
$:錨定行尾,此字元前面的任意内容必須出現在行尾
^$:空白行
\<或\b:錨定詞首,其後面的任意字元必須作為單詞首部出現
\>或\b:錨定詞尾,其前面的任意字元必須作為單詞的尾部出現
基本正規表達式 basic REGEXP
擴充正規表達式
分組
\(\)
\(ab\)*反向引用 \1:引用第一個左括号以及與之對應的右括号所包括的所有内容
[]:比對指定範圍内的任意單個字元
[^]:比對指定不在範圍内的任意單個字元
次數比對:
*:比對其前面的字元任意次
?:任意單個字元
+:比對其前面的字元至少1次
|:or或 C|cat
本文轉自 周小玉 51CTO部落格,原文連結:http://blog.51cto.com/maguangjie/1853155,如需轉載請自行聯系原作者