2018.1.15 6周1次課
9.1 正則介紹_grep上
9.2 grep中
9.3 grep下
在計算機科學中,對“正則表達式" 的定義是:它使用單個字符串來描述或匹配一系列符合某個句法規則的字符串。在很多文本編輯器或其他工具裏,正則表達式通常用來檢索和替換那些符合某個模式的文本內容。許多程序設計語言也都支持利用正則表達式進行字符串操作。對於系統管理員來講,正則表達式貫穿在我們的日常運維工作中,無論是查找某個文檔,還是查詢某個日誌文件並分析其容,都會用到正則表達式。
其實正則表達式只是一種思想、一種表示方法。只要我們使用的工具支持這種表示方法,那麽這個工具就可以處理正則表達式的字符串。常用的工具有grep、sed、awk等,其中grep、sed和都是針對文本的行進行操作的。
9.1 正則介紹_grep上
該命令的格式為:grep [-cinvABC]‘word’filename
常用的選項如下:
-c:表示打印符合要求的行數。
-i:表示不區分大小寫。
-n:表示輸出符合要求的行及其行號。
-v:表示打印不符合要求的行。
-r:遍歷所有子目錄。
-A:後面跟一個數字(有無空格都可以)。過濾出符合要求的行以及下面n行
-B:後面跟一個數字。過濾出符合要求的行以及上面n行
-C:後面跟一個數字。過濾出符合要求的行以及上面n行。
9.2 grep中
方括號[ ]:匹配方括號裏任意一個字符
^x:匹配以x開頭的字符
[^xyz]:非,匹配除方括號裏xyz之外的任意字符串
^[^xyz]:匹配以除方括號裏xyz之外的任意字符開頭的字符
點 .:匹配任意一字符
*:匹配星號左邊的字符重復0到n次的字符串。
.*:表示零個或多個任意字符,空行也包含再內。會把passwd文件裏面的所有行都匹配到。
9.3 grep下
花括號 x\{ n\}:字符x重復n次。
x\{ n,m\}:字符x重復n-m次
egrep:是grep的擴展版本,可以完成grep不能完成的工作,可以不使用字符 \
grep –E 跟egrep使用效果一樣
+:匹配加號左邊的字符重復1到n次的字符串。
?:問號前面的字符重復的次數是0或者1。
|:或者
2018.1.15 6周1次課