測試必會之 Linux 三劍客之 grep

2022-01-10 18:56:35 字數 3282 閱讀 5784

grep (global search regular expression(re) and print out the line,全面搜尋正規表示式並把行列印出來)是一種強大的文字搜尋工具,它能使用正規表示式搜尋文字,並把匹配的行列印出來

可用於資料查詢定位

先列舉出測試工作常用的grep命令和意義:

grep pattern file

grep -i pattern file # 忽略大小寫

grep -v pattern file # 不顯示匹配行

grep -o pattern file # 只把每個匹配的內容獨立的行顯示

grep -e pattern file # 使用拓展正規表示式,相當於egrep

#注意:grep 'a[0-9]\' 等同於 grep -e 'a[0-9]'

grep -b, --before-context=num # 列印以文字起始的num 行

grep -a, --after-context=num # 列印以文字結尾的num 行

grep -c, --context=num # 列印輸出文字num 行

grep pattern -r dir/ # 遞迴搜尋

grep -m1 # 匹配匹配中的第乙個

grep -n # 順便輸出行號

grep -p # 可以讓grep使用perl的正規表示式語法

bre基本正規表示式:

ere擴充套件表示式是基本正規表示式(bre)基礎上的擴充套件

話不多說,先舉例

找出500錯誤時候的上下文

chenshifengdemacbook-pro:~ chenshifeng$ grep -a 2 ' 500 ' nginx.log    # 顯示500錯誤及其後2行

chenshifengdemacbook-pro:~ chenshifeng$ grep -b 2 ' 500 ' nginx.log # 顯示500錯誤及其前2行

chenshifengdemacbook-pro:~ chenshifeng$ grep -c 2 ' 500 ' nginx.log # 顯示500錯誤及其前後2行

220.181.108.181 - - [05/dec/2018:00:09:13 +0000] "get /syyair/following?locale=zh-cn http/1.1" 200 13355 "-" "mozilla/5.0 (compatible; baiduspider/2.0; +" 0.035 0.035 .

1、先訪問 部落格主頁,利用 grep href 過濾出所有包含 url 的內容。命令:

......再用grep命令匹配"200 ok"作為判斷條件,篩選出成功的url並列印,然後將失敗的 url 加上 err 標記也一起列印出來。

linux 三劍客之 grep

grep 是 linux系統中最重要的命令之一 其功能是從文字或者管道資料中篩選匹配的行及資料 如果配置正規表示式技術一起使用,則其功能更強大,它是linux運維人員必須要掌握的命令之一 usage grep option pattern file 用法 grep 引數 要搜尋的內容 檔案 eg r...

linux 三劍客之 awk

awk是一種程式語言,用於在linux unix下對文字和資料進行處理。資料可以來自標準輸入 stdin 乙個或多個檔案,或其它命令的輸出。它支援使用者自定義函式和動態正規表示式等先進功能,是linux unix下的乙個強大程式設計工具。它在命令列中使用,但更多是作為指令碼來使用。awk有很多內建的...

Linux三劍客之grep

1.用途 linux grep命令是用於查詢檔案裡符合條件的字串 2.語法 grep 選項 搜尋的字串 檔案 3.常見的選項 e 開啟擴充套件 extend 的正規表示式。i 忽略大小寫 ignore case v 反過來 invert 只列印沒有匹配的,而匹配的反而不列印。n 顯示行號 w 被匹配...