正則shell
一串有規律的字符串編程
掌握好正則對編寫shell腳本有很大幫助工具
各類編程腳本中都有正則spa
grep sed awk3d
格式: grep [-cinvABC] 'word' filenameblog
-c 打印符合要求的行的行數ci
-i 不區分大小寫字符串
-n 顯示行號awk
-v 打印不符合要求的行sed
-r 遍歷全部子目錄
-A 後面跟數字,例如-A2 表示打印符合要求的行以及下面兩行
-B 後面跟數字,例如 -B2 表示打印符合要求的行以及上面兩行
-C 後面跟數字,例如-C2 表示打印符合要求的行以及上下兩行
過濾出帶有某個關鍵詞的行,並輸出行號
過濾出不帶有某個關鍵詞的行,並輸出行號
過濾出全部包含數字的行
過濾出全部不帶數字的行,只要在上面命令中加上 -v 選項就行
過濾掉全部以#開頭的行 符號 ^ 表示行的開始
過濾掉全部空行和以#開頭的行
$表示行的結尾,空行就用 ^$ 表示
打印出除了符合中括號 [ ] 裏的內容
過濾出任意一個字符和重複字符
符號 . 表示任意一個字符
符號 * 表示零個或多個前面的字符
.* 表示零個或多個任意字符,空行也包含在內
指定要過濾出的字符出現的次數
grep使用大括號 { } 要在大括號前使用脫義符號,不想使用脫義符號就要使用 -E 選項,或使用egrep
過濾出一個或多個指定的字符
符號 + 表示匹配1個或多個+前面的字符,grep使用 +也要在前面加脫義符號
過濾出零個或一個指定的字符 使用符號?
過濾出字符串1或字符串2 用符號 |
egrep中()的應用
()內是一個總體
t(ell|oo)表示把有tell 或too的行打印出來。