我遇到了这个问题:
FILE1: FILE2
1000 1000
1001 1003
1002 1007
1003 1009
1004 1010
1005
1006
1007
1008
1009
1010
我希望得到这样的结果:
OUTPUT:
1000 1000
1001
1002
1003 1003
1004
1005
1006
1007 1007
1008
1009 1009
1010 1010
我想要使用加入,但它什么也没做。
你有什么想法吗?
非常感谢!
答案 0 :(得分:3)
从file1(-a 1
)左连接并输出每个文件的第一个字段(-o 1.1,2.1
):
$ join -a 1 -o 1.1,2.1 file1 file2
1000 1000
1001
1002
1003 1003
1004
1005
1006
1007 1007
1008
1009 1009
1010 1010
答案 1 :(得分:1)
检查一下,如果它符合你的要求:
kent$ awk 'NR==FNR{a[$0]=1;next}$0=$0 (a[$0]?" "$0:"")' f2 f1
1000 1000
1001
1002
1003 1003
1004
1005
1006
1007 1007
1008
1009 1009
1010 1010