grep命令是一種強大的文字搜尋工具,根據使用者指定的「模式」對目標文字進行匹配檢查,列印匹配到的行
grep命令的基本用法引數
說明-c
只輸出匹配行的數量
-i搜尋時忽略大小寫
-h查詢多檔案時不顯示檔名
-l只列出符合匹配的檔名,而不列出具體的匹配行
-n列出所有的匹配行並顯示行號
-s不顯示不存在或無匹配文字的錯誤資訊
-v顯示不包含匹配文字的所有行
-w匹配整詞
-x-x匹配整行
-r遞迴搜尋,不僅搜尋當前工作目錄,並且搜尋子目錄
-q禁止輸出任何結果,以退出狀態表示搜尋是否成功
-b列印匹配行距檔案頭部的偏移量,以位元組為單位
-o與-b選項結合使用,列印匹配詞距檔案頭部的偏移量,以位元組為單位
-e支援擴充套件的正規表示式
-f不支援正規表示式,按照字串的字面意思進行匹配
例1:
grep root /etc/passwd #過濾檔案中含有root的行
grep -c root /etc/passwd #-c只輸出匹配行的數量
grep -n root /etc/passwd #-n列出所有的匹配行並顯示行號
grep -v root /etc/passwd #-v顯示不包含root的所有行
例2:
grep -i root passwd #搜尋時忽略大小寫
grep ro*t passwd #應用正規表示式
例3:
grep root nigar
grep -s root nigar #-s不顯示不存在或無匹配文字的錯誤資訊
例4:
grep -r passwd /etc/ #-r遞迴搜尋,不僅搜尋當前工作目錄,並且搜尋子目錄
例5:
grep roo* passwd
grep -w roo* passwd #-w匹配整詞
例6:
grep -w today test.txt
grep -x today test.txt #-x匹配整行
例7:
grep -q -x today test.txt #-q禁止輸出任何結果,以退出狀態表示搜echo $?
例8:
grep -c ^$ passwd #搜尋空行
grep -c ^[^$] passwd #搜尋非空行
例9:
grep -n [rr]oot passwd #正規表示式 表示第乙個字元可以是r或r後面三個字元為oot
shell中grep命令詳解
用 grep 搜尋文字檔案 如果您要在幾個文字檔案中查詢一字串,可以使用 grep 命令。grep 在文字中搜尋指定的字串。舉個例子 假設您正在 usr src linux documentation 目錄下搜尋帶字串 magic 的檔案 grep magic usr src linux docum...
Shell指令碼中find和grep命令的區別
在shell指令碼中find 和 grep 同樣都是搜尋命令。find 命令用於在系統中搜尋符合條件的檔名,如果需要模糊查詢,則使用萬用字元進行匹配。搜尋時檔名是完全匹配的。例如 root localhost touch abc 建立檔案abc root localhost touch abcd 建...
shell中grep命令及常用語法
背景 grep的全稱是global regular expression print,是linux中最強大的文字搜尋命令之一,常用於搜尋文字檔案中是否含有某些特定模式的字串。該命令以行為單位讀取文字並使用正規表示式進行匹配,匹配成功後列印出該行文字。命令格式 grep option string t...