linux怎么使用grep命令查找文件內(nèi)容

linux中,可以使用“grep 查找內(nèi)容 文件”命令來簡單查找文件內(nèi)容;如果想要忽略大小寫,則可使用“grep -i 查找內(nèi)容 文件”命令;如果想搜索目錄里所有文件,且結(jié)果中顯示行號,則可使用“grep -nr 查找內(nèi)容 *”命令。

linux怎么使用grep命令查找文件內(nèi)容

本教程操作環(huán)境:Red Hat Enterprise Linux 6.1系統(tǒng)、Dell G3電腦。

Linux查找文件內(nèi)容(grep)

grep是Linux命令行下常用于查找過濾文本文件內(nèi)容的命令。最簡單的用法是:

grep?查找內(nèi)容?文件

如果想忽略大小寫,可以用-i參數(shù):

grep?-i?查找內(nèi)容?文件

如果想搜索目錄里所有文件,包括子目錄的話,并且在結(jié)果中顯示行號,可以用以下命令:

grep?-nr?查找內(nèi)容?*

grep的語法支持正則表達(dá)式,正則表達(dá)式有些復(fù)雜,以后再講解。下面是一些有用的參數(shù):

  • -A num, –after-context=num: 在結(jié)果中同時輸出匹配行之后的num行

  • -B num, –before-context=num: 在結(jié)果中同時輸出匹配行之前的num行,有時候我們需要顯示幾行上下文。

  • -i, –ignore-case: 忽略大小寫

  • -n, –line-number: 顯示行號

  • -R, -r, –recursive: 遞歸搜索子目錄

  • -v, –invert-match: 輸出沒有匹配的行

我們可以通過管道操作來讓grep變得更強大,管道操作就是把前面一條命令的輸出作為后面一條命令的輸入,從而把很多簡單的命令組合起來完成復(fù)雜的功能。例如,如果我們想查找包含apple的行,但又想過濾掉pineapple,可以用下面的命令:

grep?apple?fruitlist.txt?|?grep?-v?pineapple

如果我們想把搜索結(jié)果保存起來,那么可以把命令的標(biāo)準(zhǔn)輸出重定向到文件:

grep?apple?fruitlist.txt?|?grep?-v?pineapple?>?apples.txt

重定向符號>和管道操作符號|的區(qū)別是,重定向后面接的是一個文件,它后面不能再接任何文件或命令了;而管道操作后面接的是命令,可以無限地接下去。如果想以追加方式寫到文件,可以用>>。管道操作是Linux命令行的一種哲學(xué),它是計算機技術(shù)中少有的能沿用幾十年的技術(shù)之一。通過管道操作,一行命令可以完成Windows下上千行程序也不能完成的文本處理功能。

相關(guān)推薦:《Linux視頻教程

以上就是

? 版權(quán)聲明
THE END
喜歡就支持一下吧
點贊6 分享