我知道可能可以使用awk
执行此操作,但我不知道该怎么做。
假设我有以下2个制表符分隔文件,其中只有空行仅包含\n
:
文件1:
A 1 4
B 2 5
C 3 6
D 7 10
E 8 11
A 9 12
file2的:
E 13 16
F 14 17
G 15 18
H 19 22
I 20 23
J 21 24
我想生成一个新文件,该文件对应于文件1中前两列与文件2中第三列的连接,然后是文件1中的第三列:
最终档案:
A 1 16 4
B 2 17 5
C 3 18 6
D 7 22 10
E 8 23 11
A 9 24 12
请注意,在最终文件中,重要的是空白行应保持空白,并且不应在其中插入任何标签。
答案 0 :(得分:1)
简单 粘贴 + awk 组合:
VAR1=$(pwd)
输出:
paste file1 file2 | awk '!NF{ print "" }NF{ print $1,$2,$6,$3 }'
答案 1 :(得分:1)
awk 'NR==FNR{a[NR]=$3;next} NF{$3=a[FNR] OFS $3} 1' file2 file1