【发布时间】:2019-04-30 10:37:44
【问题描述】:
我有很多文件(我发布了 5 个作为示例)
如果与第一个文件不匹配,则应在输出中附加 0
文件1
1001 1 2
1002 1 2
1003 3 5
1004 6 7
1005 8 9
1009 2 3
文件2
1002 7
1003 8
文件3
1001 5
1002 3
文件4
1002 10
1004 60
1007 4
文件5
1001 102
1003 305
1005 809
需要的输出
1001 1 2 0 5 0 102
1002 1 2 7 3 10 0
1003 3 5 8 0 0 305
1004 6 7 0 0 60 0
1005 8 9 0 0 0 809
1007 0 0 0 0 4 0
1009 2 3 0 0 0 0
使用下面的代码我可以合并两个文件,但是如何合并所有
awk 'FNR==NR{a[$1]=$2;next}{print $0,a[$1]?a[$1]:"0"}' file2 file1
1001 1 2 0
1002 1 2 7
1003 3 5 8
1004 6 7 0
1005 8 9 0
提前致谢
【问题讨论】:
-
如果
file5有1006 666输出也会有1006 0 0 0 0 0 666? -
嗨詹姆斯,是的,如果可能的话,请......是的