2011-04-13 68 views
4

我需要創建一個bash腳本,它可以遍歷目錄中的一堆.txt文件,然後搜索每個.txt中的字符串,並返回整行字符串出現在bash腳本在文本文件中查找模式並返回整行

我知道如何通過目錄中的所有.txt文件看,

我只需要在正確的方向指向搜索文件本身,並根據比賽返回線在該行

回答

8

在一個目錄內

grep "search string" *.txt 

搜索或去子DIR

find /full/path/to/dir -name "*.txt" -exec grep "search string" {} ;\ 
0

,你可以使用一個循環:

for i in $(find|grep .txt); do grep "search" "$i"; 如果你也想與每個匹配打印文件名,加-H到grep

0

一個微小的增加。添加-n返回該行。

 grep -rn "foo" *.txt 

查看grep --help瞭解更多。

相關問題