grep
[options]主要引數:
-c:只輸出匹配行的計數。
-i:進行匹配時不區分大小寫(只適用於單字元)
-h:查詢多檔案時只輸出匹配的字元,不顯示檔名
-l:查詢多檔案時只輸出匹配字元的檔名
-l:查詢多檔案時只輸出不匹配字元的檔名
-n:顯示匹配行及 行號。
-s:不顯示不存在或無匹配文字的錯誤資訊。
-v:顯示不包含匹配文字的所有行。
-o:輸出精確匹配的字元而不是預設的整行,不能和-v 一起用
-w:只匹配整個單詞,而不是字串的一部分(如匹配』magic』,而不是』magical』)
-b: 除了顯示匹配的一行之外,並顯示改行之前的num行
-a: 除了顯示匹配的一行之外,並顯示改行之後的num行
-c: 除了顯示匹配的一行之外,並顯示改行之前後的num行
-e: 匹配多個字串 (大寫的e)
正規表示式:
標準字元類:
常用grep例項
多個檔案查詢
grep 「str」 *.doc
輸出匹配行的計數
grep -c 「str」 data.doc
顯示匹配的行以及行數
grep -n 「str」 data.doc
顯示非匹配的行
grep -v 「str」 data.doc
大小寫敏感匹配
grep -i 「ab」 data.doc
精準匹配
grep -o 「str」 data.doc
單詞匹配
grep -w 「str」 data.doc
多項匹配
grep -e 「str1|str2」 data.doc
正規表示式的應用
和 .的使用
grep 『[239].』 data.doc #輸出所有含有2或者3或者9 + 任意字元的行
grep 『[vv]ick』 data.doc #輸出所有含有vick或者vick的行
^ grep 『^[^48]』 data.doc #匹配行首不是48的行
¥ grep 『abc$』 data.doc #匹配行尾是abc的行
^¥(應該是美元符)
grep 『^..$』 data.doc #匹配只有兩個任意字元的行
{} grep 『abc』 data.doc #匹配滿足abcccc的行
\ grep 『192\.168\.0\.1』 data.doc #對特殊字元進行轉義
類名 grep 『5[[:upper:]][[:upper:]]』 data.doc #匹配以5開頭以兩個大寫字母結尾的行
未完待續
每天乙個linux命令(39) grep 命令
linux系統中grep命令是一種強大的文字搜尋工具,它能使用正規表示式搜尋文字,並把匹 配的行列印出來。grep全稱是global regular expression print,表示全域性正規表示式版本,它的使用許可權是所有使用者。grep的工作方式是這樣的,它在乙個或多個檔案中搜尋字串模板。...
每天乙個Linux命令
將我遇到的linux指令總結一下,不斷增加 1 sz和rz 一般來說,linux 伺服器大多是通過 ssh客戶端來進行遠端的登陸和管理的,使用 ssh登陸 linux ssh有關的兩個命令可以提供很方便的操作 sz 將選定的檔案傳送 send 到本地機器 rz 執行該命令會彈出乙個檔案選擇視窗,從本...
每天乙個linux命令
linux cmp命令 linux cmp命令用於比較兩個檔案是否有差異。當相互比較的兩個檔案完全一樣時,則該指令不會顯示任何資訊。若發現有所差異,缺省會標示出第乙個不同之處的字元和列數編號。若不指定任何檔名稱或是所給予的檔名為 則cmp指令會從標準輸入裝置讀取資料。語法cmp clsv i 字元數...