grep是乙個強大的文字搜素工具,它能使用正規表示式搜尋文字,並把匹配的行列印出來。
介紹兩種規範
- basic規範
將字元?+ | ( )解釋為字面意思。要表示特殊的意思需要加轉義字元\
- extended規範
將字元?+ | ( )解釋為特殊的意思。要表示字面意思需要加轉義字元\
grep採用basic規範。
命令選項:
常見的命令選項:
-e:表⽰示採⽤用extended正規表示式語法。
-q:取消顯示,只返回退出狀態。0表示找到了。
-i:忽略大小寫。
-r:遞迴讀取目錄下所有檔案,包括子目錄。
-v:顯示不匹配的行。
–color:加匹配到的行,加顏色顯示。
不常用的命令選項:
-m:同時顯示匹配行的上下m行。如m為2,則表示同時顯示匹配行的上下2行。
-a:支援二進位制檔案匹配。grep本是文字匹配的。加上-a,可在二進位制檔案中匹配。
-b:列印匹配行前面總共有多少位元組和匹配行內容
-c:列印匹配的行數。
-f:從檔案中提取模板。
-h:當搜尋多個檔案時,不顯示匹配檔名的字首。
-o:只顯示正規表示式匹配的部分。
-i:列印匹配模板的檔案清單。
-l:列印不匹配模板的檔案清單。
-n:在匹配行前面列印行號。
-s:不顯示不存在或無法讀取檔案的錯誤資訊。
-w:把表示式當做乙個單詞
-v:顯示軟體版本資訊。
舉幾個簡單的例子
1.匹配檔案中正確的ip位址
大家可以觀察一下上面幾個的不同。
2.grep也可以在命令列上直接使用
grep支援正規表示式,下面介紹正規表示式
規定一些特殊語法表⽰示字元類、數量限定符和位置關係,然後⽤用這些特殊語法和普通字元一起表示乙個模式,這就是正規表示式(regular expression)。
字元類:在乙個模式中表示乙個字元,但是取值範圍為任意乙個字元。
數量限定符:規定每個字元出現的次數。
位置限定符:描述各種字元類以及普通字元出現的位置。
舉幾個例子:
標準正則與擴充套件正則區別
總結:標準正則用的是basic規範,擴充套件正則用的是extended規範。
工具egrep和grep -e的效果一樣。
Linux之grep的使用
基本介紹 linux系統中grep命令是一種強大的文字搜尋工具,它能使用正規表示式搜尋文字,並把匹 配的行列印出來。grep全稱是global regular expression print,表示全域性正規表示式版本,它的使用許可權是所有使用者。grep的工作方式是這樣的,它在乙個或多個檔案中搜尋...
linux文字處理工具之grep
常用的grep選項 c 只輸出匹配行的計數。這條有時候很有用,不需要再 wc l i 不區分大小寫 只適用於單字元 h 查詢多檔案時不顯示檔名。l 查詢多檔案時只輸出包含匹配字元的檔名。n 顯示匹配行及行號。s 不顯示不存在或無匹配文字的錯誤資訊。v 顯示不包含匹配文字的所有行。例子grep v s...
linux中grep的使用
核心 grep的基本操作 grep是一種強大的文字搜尋工具,它能使用正規表示式搜尋文字,並把匹配的行列印出來 選項 a 不要忽略二進位制資料 a 顯示列數 除了顯示符合範本樣式的那一行之外,並顯示該行之後的內容 b 在顯示符合范文樣式的那一行之外,並顯示該行之前的內容。c 計算符合范文樣式的列數 c...