使用 awk,如何从多个文件源获取所需的输出

使用 awk,如何从多个文件源获取所需的输出

我有两个文件:

文件1:

A,D
B,E
C,F

文件2:

G,H,I
J,K,L

使用awk,我想打印:

A,D
B,E,I
C,F,L

我该如何使用awk来实现这一目标?

答案1

患病的认为n行中的额外字段file2应附加到最后的 n的行file1

awk -F, -v OFS=, 'FNR==NR {a[FNR]=$3; next} {print $0, a[FNR]}' <(tac file2) <(tac file1) | tac
paste -d, <(tac file1) <(cut -d, -f3- <(tac file2)) | tac

这些解决方案在第一行添加尾随逗号。您可以通过将上述内容通过管道将其删除sed 's/,$//'

相关内容