**:
如果你想在當前目錄下 查詢"hello,world!"字串,可以這樣:
grep -rn "hello,world!" *
* : 表示當前目錄所有檔案,也可以是某個檔名
-r 是遞迴查詢
-n 是顯示行號
-r 查詢所有檔案包含子目錄
-i 忽略大小寫
下面是一些有意思的命令列引數:
grep -i pattern files :不區分大小寫地搜尋。預設情況區分大小寫,
grep -l pattern files :只列出匹配的檔名,
grep -l pattern files :列出不匹配的檔名,
grep -w pattern files :只匹配整個單詞,而不是字串的一部分(如匹配『magic』,而不是『magical』),
grep -c number pattern files :匹配的上下文分別顯示[number]行,
grep pattern1 | pattern2 files :顯示匹配 pattern1 或 pattern2 的行,
grep pattern1 files | grep pattern2 :顯示既匹配 pattern1 又匹配 pattern2 的行。
這裡還有些用於搜尋的特殊符號:
\< 和 \> 分別標註單詞的開始與結尾。
例如:
grep man * 會匹配 『batman』、『manic』、『man』等,
grep '\grep '\' 只匹配『man』,而不是『batman』或『manic』等其他的字串。
'^':指匹配的字串在行首,
'$':指匹配的字串在行尾,
2,xargs配合grep查詢
find -type f -name '*.php'|xargs grep 'grouprecord'
Linux中grep查詢含有某字串的所有檔案
在專案中,經常會遇到原始表名等已更換需要在指令碼中批量替換的情況。但是這些涉及到哪些表,乙個個的查詢有些麻煩還可能會漏掉 直接在linux上替換掉可能不能進行很好的版本同步 所以,可以考慮通過find與grep命令組合先查詢出需要修改的指令碼再進行統一處理。遞迴查詢目錄下含有該字串的所有檔案 gre...
Linux中grep查詢含有某字串的所有檔案
在專案中,經常會遇到批量修改表名或者key password的情況。如果伺服器上只有1個專案,我們可以在pycharm中全域性搜尋,然後替換。但如果伺服器上有多個專案,不清楚這些表名 key password都在哪些專案中的哪些檔案中,乙個個開啟pycharm查詢有些麻煩,還可能會漏掉 所以可以考慮...
Linux查詢含有某字串的所有檔案
如果你想在當前目錄下 查詢 send 字串,可以這樣 表示當前目錄所有檔案,也可以是某個檔名 r 是遞迴查詢 n 是顯示行號 r 查詢所有檔案包含子目錄 i 忽略大小寫 下面是一些有意思的命令列引數 grep i pattern files 不區分大小寫地搜尋。預設情況區分大小寫,grep l pa...