【发布时间】:2021-06-26 03:27:50
【问题描述】:
我需要比较我的 file1.txt 和 file2.txt 的第 1 列和第 2 列。如果两列都匹配,则打印 file1.txt 的整行,但如果 file1.txt 中的一行在 file2.txt 中不存在,则还要在输出中打印缺失的行并在第三列中添加“0”作为其值。
#file1.txt #
AA ZZ
JB CX
CX YZ
BB XX
SU BY
DA XZ
IB KK
XY IK
TY AB
#file2.txt #
AA ZZ 222
JB CX 345
BB XX 3145
DA XZ 876
IB KK 234
XY IK 897
预期输出 # output.txt #
File1.txt
AA ZZ 222
JB CX 345
CX YZ 0
BB XX 3145
SU BY 0
DA XZ 376
IB KK 234
XY IK 897
TY AB 0
我尝试了这段代码,但不知道如何添加不匹配的行并将"0" 添加到其中
awk 'BEGIN { while ((getline <"file2.txt") > 0) {REC[$1]=$0}}{print REC[$1]}' < file1.txt > output.txt
【问题讨论】:
标签: awk