Linux 拼接两个文件列拼接

2016-09-18  本文已影响368人  十月汪

目的

拼接两个没有相同列的文件。

$ cat file1
aaaaaa
bbbbbb
cccccc
dddddd
$ cat file2
111111
222222
33333

使用 join

首先考虑 join。先输出行号,再利用行号 join.

$ awk '{print NR,$1}' file1 > file1.tmp
$ awk '{print NR,$1}' file2 > file2.tmp
$ join file1.tmp file2.tmp | awk '{print $2,$3}'
aaaaaa 111111
bbbbbb 222222
cccccc 33333

使用 awk

$ awk '{a="NULL";getline a < "file2" ;print $0,a}' file1
aaaaaa 111111
bbbbbb 222222
cccccc 33333
dddddd NULL

解释一下

上一篇 下一篇

猜你喜欢

热点阅读