【问题标题】:grep: print both matchesgrep:打印两个匹配项
【发布时间】:2014-02-16 22:45:09
【问题描述】:

以下命令仅返回来自 file2 的匹配项。

grep -f file1 file2

如何在 file2 的第二个匹配项之后从第一个文件 (file1) 打印匹配行?

【问题讨论】:

    标签: awk grep


    【解决方案1】:
    awk 'NR==FNR{res[$0]; next}
    {
        found = 0
        for (re in res) {
            if ($0 ~ re) {
                print "found:", re
                found = 1
            }
        }
    }
    found
    ' file1 file2
    

    【讨论】:

    • 非常感谢。您能告诉我如何在一行中打印匹配项(制表符分隔)吗?
    • @Ed Morton 我也对部分匹配行感兴趣,但您的代码似乎只提供完整匹配,对吗?出于这个原因,我使用了 grep。
    • @MaryamSani 不,你错了。试一试,并通过示例告诉我们任何具体问题。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-06-30
    • 2013-11-19
    • 2019-12-26
    • 2017-01-06
    • 1970-01-01
    • 1970-01-01
    • 2012-11-23
    相关资源
    最近更新 更多