linux的grep命令簡單使用

2021-08-04 07:23:52 字數 1570 閱讀 7414

linux的grep命令學習

grep命令是乙個很強大的文字查詢命令,grep全稱是global regular expression print,可以配合正規表示式來使用

grep常見的兩種使用方式

基於檔案的查詢,使用格式為:grep [命令引數] 待匹配模式串 [查詢檔案]

[ ]為可選的引數

例如:grep -i 'hello world' menu.h main.c

如果不是在檔案中查詢的話,一般是通過管道的方式和其他程序相配合來使用

如查詢目錄下的檔案

例如:ls |grep helloworld

ps:grep後面的模式串進行模糊匹配時,加 」 修飾的話,將會把符合模式串字首的一起匹配

例如:在/usr/include目錄下查詢pthread.h檔案。

ls |grep 'pth*'

輸出:

crypt.h

getopt.h

pthread.h

pty.h

stropts.h

而不新增的話,如:ls |grep pth*

輸出:

pthread.h

常見引數

下面列出一些常見的引數:

-a –text 不要忽略二進位制的資料。

-a 《設定的行數》, –after-context=《設定的行數》 列印文字及其後面num 行

例子:grep main helloworld.cpp -a 5

輸出:

」 從匹配項所在行開始輸出5行。」

-b, –byte-offset 輸出的同時列印位元組偏移

-b 《設定的行數》, –before-context=《設定的行數》 列印文字及其前面num 行

例子:同上

輸出:

「從匹配項所在行為第5行,從第一行輸出到第5行」

-c, –count 只列印每個file 中的匹配行數目

例子:ls |grep haha -c

輸出:

匹配的次數

-c 《設定的行數》, –context=num 列印num 行輸出文字

也可以使用

-num (和 -c 《設定的行數》效果一樣)

-i ,–ignore-case #忽略字元大小寫的差別。

grep的規則表示式

^  #錨定行的開始 如:'^grep'匹配所有以grep開頭的行。    

$ #錨定行的結束 如:'grep$'匹配所有以grep結尾的行。

. #匹配乙個非換行符的字元 如:'gr.p'匹配gr後接乙個任意字元,然後是p。

* #匹配零個或多個先前字元 如:'*grep'匹配所有乙個或多個空格後緊跟grep的行。

.* #一起用代表任意字元。

更多的引數,可以參考以下博主的總結

linux常用指令—grep(搜尋過濾)

Linux常用命令 grep的簡單使用

在linux中,查詢檔案內容主要用grep命令來實現。基本格式 grep expression 1下面是一些常用的使用場景。grep i zzz abc.txt 不區分大小寫查詢 grep c zzz abc.txt 只輸出匹配行的總計數 grep i n aaa abc.txt 顯示匹配行及行號 ...

linux下的grep命令

grep global search regular expression re and print out the line,全面搜尋正規表示式並把行列印出來 是一種強大的文字搜尋工具,它能使用正規表示式搜尋文字,並把匹配的行列印出來。a不要忽略二進位制資料。a 顯示列數 除了顯示符合範本樣式的那...

Linux命令之 grep命令》

1.作用 linux系統中grep命令是一種強大的文字搜尋工具,它能使用正規表示式搜尋文字,並把匹配的行列印出來 也可以通過管道重定向流輸出到檔案中 grep全稱是global regular expression print,表示全域性正規表示式列印,它的使用許可權是所有使用者。2.格式 grep...