如何使用单词列表进行grep

pho*_*nix 74 grep

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

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

grep -F A B
Run Code Online (Sandbox Code Playgroud)

Chr*_*our 103

你需要使用选项-f:

$ grep -f A B
Run Code Online (Sandbox Code Playgroud)

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

$ grep -Ff A B
Run Code Online (Sandbox Code Playgroud)

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

$ grep -wFf A B
Run Code Online (Sandbox Code Playgroud)

阅读man grep以获取所有可能参数及其功能的描述.

  • 如果你不想使用正则表达式,-F只是一个优化吗? (4认同)
  • 完全是@phoenix. (2认同)