2011-04-13 75 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了解更多。

相关问题