如何 grep 多个文件中的多个字符串?

如何 grep 多个文件中的多个字符串?

我有一个包含很多字符串的文件。为简单起见,假设它是换行符分隔的,并且每个字符串仅由包含字母数字 ASCII 字符和下划线组成。

现在,我想搜索一个/多个文件中是否出现任何这些字符串。如果它们不是很多,我想我可以将它们连接起来|并使用一个 grep 。但是——如果有成千上万个呢?

答案1

您可以将文件与许多字符串一起使用,每行一个,作为grep's-f选项的参数,该选项告诉它查找指定文件中列出的字符串:

grep -f patterns.txt *

(或任何合适的 glob)。grep将在给定文件中找到与patterns.txt.

-F如果所有字符串都是要匹配的固定字符串,您可能也应该指定。

相关内容