linux文本處理三劍客之grep

GREP

其實 grep 是一段話的縮寫:Global search regular expression and print
out the line(全面搜索研究正則表達式並顯示出來)
作用:grep 命令是一種強大的文本搜索工具,根據用戶指定的“模
式”對目標文本進行匹配檢查,打印匹配到的行。
模式(patten):由正則表達式或者字符及基本文本字符所編寫的過
濾條件
那什麼是正則表達式(REGEXP)呢,下面我們做一個簡單的介紹:
正則表達式:由一類特殊字符及文本字符所編寫的模式,其中有些字
符不表示字符的字面意思,而表示控制或通配的功能(是不是比較難
理解)
分文兩類:1.基本正則表達式(BRE):grep
2.擴展正則表達式 (ERE): egrep
grep –E
grep -i ^root file ###以root開頭,i(ignore-case):忽略大小寫
grep -i root$ file ###以root結尾
grep root -r /mnt/ ###顯示/mnt/下文件中有root的行
grep -n root file ###顯示行號
grep -A 1 root file ###顯示file中root的後一行,A(after)
grep -B 1 root file ###顯示file中root的前一行,B(before)
grep -E “root|lee” file ###過濾root以及lee (也可以用egrep)E(extended):擴展正則
grep [abc] file ###匹配裏面任意一個字符
grep [^abc] file ###匹配不包含^後面的一個字符的內容(非a,b,c)
*)
egrep -n ‘a?c’ file ###n(number):顯示行號?:重複0個或一個字符
egrep ‘a+c’ file ###+:重複前面一個或一個以上的前面字符
egrep a{n,m} file ###重複前一個字符n-m次
grep a{n,} file ###重複前一個字符至少n次(n-無窮)未加-E及擴展正則則要加\轉義,sed -r也不用轉義
egrep a{n} file ###重複前面一個字符n次
egrep a{,m} file ###重複前面最多m次

grep “n.m” file ###代表一個字符
grep “n*m” file ###重複0個或多個前面的字符

grep “\

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