使用bash列出具有特定字符组合的文件

时间:2014-07-17 23:34:15

标签: bash grep

所以我有一个包含~50个文件的目录,每个文件包含不同的内容。我经常发现自己不记得哪些文件包含什么。 (这不是命名的问题 - 它有点像程序列表而不记住哪些文件包含条件)。

无论如何,到目前为止,我一直在使用

cat * | grep "desiredString"

我知道的字符串在那里。但是,这只是给了我包含所需字符串的行。这通常已经足够了,但如果可能的话,我希望它能为我提供文件名。

我怎么能这样做?

2 个答案:

答案 0 :(得分:1)

听起来你想要grep -l,它会列出包含特定字符串的文件。您也可以直接将文件名参数传递给grep并跳过cat

grep -l "desiredString" *

答案 1 :(得分:0)

在包含您要搜索的文件的目录中:

grep -rn "desiredString" .

这可以列出所有匹配“desiredString”的文件,包括文件名,匹配行和行号。