在Linux下查找文件內容包含某個特定字符串的文件


如何在Linux下查找文件內容包含某個特定字符串的文件?

我的目錄下面有test1和test2兩個文件夾,里面都含有很多文件,其中test2里面還包含一個test文件夾

我想請問的是,如何通過查找關鍵字test從而找到test1跟test2還有test,並且不顯示其他文件

我嘗試過用find /path -name test查找,結果出來的是/path/test2/testls test*查找,結果連同test1跟test2里面的子文件都顯示出來,羅列了一大堆我還嘗試了用find test*查找,結果跟用上面的一樣,只是羅列的方式不一樣而已

 

以下是對查找常用的命令歸納【相應大家在linux上常用】

find:

查找文件:find ./actions/ -name Constract.php查找包含leyangjun字母的文件:find /etc -name '*leyangjun*'查找srm開頭的文件:find/etc -name 'srm*'我們要在/usr目錄及子目錄下查找文件名包含“leyangjun”關鍵字的文件:find /usr -print |grep leyangjun

grep:

在Constract.php文件中查找字符leyangjun的行:grep 'leyangjun' Constract.php不區分大小寫地搜索。默認情況區分大小寫:grep -i 'ModifySubacction' controllers/Constract.php

管道查詢:

從根目錄開始查找所有擴展名為.log的文本文件,並找出包含”leyangjun”的行:find / -type f -name "*.log" | xargs grep "leyangjun"

當前目錄開始查找所有擴展名為.php的文本文件,並找出包含”leyangjun”的行:find ./ -name "*.php" | xargs grep "leyangjun"

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM