【发布时间】:2015-12-15 17:41:53
【问题描述】:
如何使用 awk 为每列查找与第 2 行匹配的值?
我想获取一个选项卡限制文件,如果第 2 行下方的任何行与第 2 行中的内容匹配,则对于每一列,使用“匹配”打印字段。
转换此制表符分隔文件:
header1 | header2 | header3
1 | 1 | B
--------+---------+----------
3 | 1 | A
2 | A | B
1 | B | 1
到这里:
header1 | header2 | header3
1 | 1 | B
--------+---------+----------
3 | 1 match | A
2 | A | B match
1 match | B | 1
【问题讨论】:
-
您的数据实际上是这样的吗,
--+--,还是每个字段之间只有制表符? @anubhava 因为它不是1,我猜。 -
第 1 列中所需的匹配是
1。第 2 列所需的匹配又是1,第 3 列所需的匹配是B。每一列都需要独立取。 -
数据仅以制表符分隔。我试图通过添加
--+--来说明这一点,但事实并非如此。感谢您的评论。