代码之家  ›  专栏  ›  技术社区  ›  Michael Goldshteyn

将具有多个模式的文件传递给grep

  •  1
  • Michael Goldshteyn  · 技术社区  · 15 年前

    假设我们有两个文件。

    match.txt文件 :包含要匹配的模式的文件:

    fed ghi
    tsr qpo
    

    data.txt文件 :包含文本行的文件:

    abc fed ghi jkl
    mno pqr stu vwx
    zyx wvu tsr qpo
    

    现在,我想发出grep命令,该命令将返回 data.txt文件 :

    abc fed ghi jkl
    zyx wvu tsr qpo
    

    …因为这两行中的每一行都符合 match.txt文件 .

    我尝试过:

    grep -F -f match.txt data.txt
    

    但这没有结果。

    grep信息: GNU grep 2.6.3 (塞格温)
    操作系统信息: Windows 2008 R2

    更新:The 修理 使用此命令: tr -d "\r" <match.txt | grep -F -f - text.txt

    对于通过-f标志呈现给grep的匹配文件,grep似乎没有正确地遵守windows行结尾(cr/lf)。

    1 回复  |  直到 11 年前
        1
  •  2
  •   JohnCC    15 年前

    [~] $ grep -F -f match.txt data.txt 
    abc fed ghi jkl
    zyx wvu tsr qpo