输入文件1:
1
5
6
输入文件2:
4.5
6.7
9.9
输出:
1 4.5
5 6.7
6 9.9
我试过join
了,但它在这里不起作用,因为没有共同的领域。有人对此有想法吗?
根据以下记录,我认为您正在寻找paste
命令而不是join
:
pax> cat file1
1
5
6
pax> cat file2
4.5
6.7
9.9
pax> paste file1 file2
1 4.5
5 6.7
6 9.9
有关更多详细信息,请参阅您的友好社区man
页面(或info
页面),例如-d
用于选择除 之外的分隔符TAB,或-s
按顺序而不是并行处理文件。
pax> paste -d= file1 file2
1=4.5
5=6.7
6=9.9
pax> paste -d, -s file1 file2
1,5,6
4.5,6.7,9.9
awk 'FNR==NR{a[NR]=$1;next}{print a[FNR],$0}' file2 file1
测试如下:
> cat file2
a
b
c
> cat file1
1
100
90
> awk 'FNR==NR{a[NR]=$1;next}{print a[FNR],$0}' file2 file1
a 1
b 100
c 90