如何使用单词列表进行grep

时间:2013-07-25 16:08:38

标签: grep

我有一个文件A,其中有100个单词,用新行分隔。我想搜索文件B,看看文件A中是否有任何单词出现在其中。

我尝试了以下但对我不起作用:

grep -F A B

2 个答案:

答案 0 :(得分:98)

您需要使用-f选项:

$ grep -f A B

选项-F执行固定字符串搜索,其中-f用于指定模式文件。如果文件只包含固定字符串而不是正则表达式,则可能需要两者。

$ grep -Ff A B

您可能还需要-w选项才能匹配整个单词:

$ grep -wFf A B

阅读man grep以获取所有可能参数及其作用的描述。

答案 1 :(得分:1)

要在大文件中找到很长的单词列表,使用egrep会更有效:

remove the last \n of A
$ tr '\n' '|' < A > A_regex
$ egrep -f A_regex B