Linux——bash命令(grep文本搜索工具命令)

如下爲學習整理內容,供本身翻閱和他人翻閱使用正則表達式

grep查找關鍵詞,並打印匹配的行

說明:
grep是一個功能強大的程序,它用來在文件中查找匹配文本學習

用法: grep [選項] PATTERN/regex  [FILE...]
在每一個 FILE 或是標準輸入中查找 PATTERN。
默認的 PATTERN 是一個基本正則表達式(縮寫爲 BRE)。
例如: grep -i 'hello world' menu.h main.c
選項:
	正則表達式選擇
	-G 使用基本正則表達式, --basic-regexp
	-e 使用 PATTERN 來進行匹配操做, --regexp=PATTERN (默認)
	-E 使用可擴展的正則表達式, --extended-regexp
	-P 使用Perl 正則表達式, --perl-regexp  
	-F 使用斷行符進行分隔進行匹配的定長字符串, --fixed-strings
	-f 從 FILE 中取得 PATTERN, --file=FILE 
	-i 匹配忽略大小寫,--ignore-case
	-w 強制 PATTERN 僅徹底匹配字詞, --word-regexp
	-x 強制 PATTERN 僅徹底匹配一行, --line-regexp
	-z 一個 0 字節的數據行,但不是空行, --null-data
	雜項
	-v 匹配取反,--invert-match
	-s 禁止錯誤信息輸出, --no-messages
	--color=auto 標記匹配顏色
	輸出控制
	-m NUM 次匹配後中止, --max-count=NUM
	-c 輸出匹配的數目,--count
	-l 輸出匹配項的文件名,--files-with-matches
	-r 對文件夾進行遞歸查詢 可是對符號連接(symbolic links)的文件只有在命令裏面才檢索 若是沒有文件就是默認當前文件夾, --recursive 
	-L 與-l相反,但輸出的不包含匹配項的文件名,--files-without-match
	-n 爲匹配行顯示在文件中的行號,--line-number
	-h 多文件搜索時,抑制文件名的輸出,--no-filename
	-H 與-h選項相反
	文件控制
	-B n 打印匹配搜索後的內容以前的n行一併輸出打印, --before-context=NUM
	-A n 打印匹配搜索後的內容以後的n行一併輸出打印, --after-context=NUM
	-C n 打印匹配搜索後的內容以前以後的n行一併輸出打印, --context=NUM

案例截圖:

使用注意點
‘egrep’即‘grep -E’。‘fgrep’即‘grep -F’。
若FILE 爲 -,將讀取標準輸入。不帶FILE,讀取當前目錄,除非命令行中指定了-r 選項。
若是少於兩個FILE 參數,就要默認使用-h 參數。
若是有任意行被匹配,那退出狀態爲 0,不然爲 1;
若是有錯誤產生,且未指定 -q 參數,那退出狀態爲 2。
-l -L選項使用
在這裏插入圖片描述-n選項使用
在這裏插入圖片描述
-c 選項使用
在這裏插入圖片描述
-h選項的使用
在這裏插入圖片描述命令行

相關文章
相關標籤/搜索