列匹配

时间:2015-04-01 03:08:33

标签: linux scripting

已删除

删除

已删除

删除 删除

1 个答案:

答案 0 :(得分:0)

首先,进行一些预处理。删除标题(两个文件中的前两行)。然后,将制表符作为字段分隔符。在第二个字段上排序A,在第一个字段上排序B.让我们说这会导致文件“a”和“b”。然后,可以使用join命令。

$ cat a
Eva High School F
Bill    Post Graduate   M
Eddie   Post Graduate   M
John    Unviersity  M
Mary    Unviersity  F
Peter   Unviersity  M
$ cat b
High School B
Post Graduate   C
Unviersity  A
$ join -12 -21 -t$'\t' a b 
High School Eva F   B
Post Graduate   Bill    M   C
Post Graduate   Eddie   M   C
Unviersity  John    M   A
Unviersity  Mary    F   A
Unviersity  Peter   M   A

您可以通过awk运行最终输出以获得所需的格式。