[英]I have two files, how should i compare these files using shell and awk script
[英]How to use awk shell script to compare and match two files
基本上我有两个档案
dupestest.txt
152,153
192,193
215,216
290,291
2279,2280
2282,2283
haftest.txt
152,ABBOTS ROAD
153,ABBOTS ROAD
154,ABBOTS ROAD
155,ABBOTS ROAD
156,ABBOTS ROAD
157,ABBOTS ROAD
我想在haftest.txt中的dupestest.txt中找到数字,并产生以下结果:results.txt
152,ABBOTS ROAD,153 ABBOTS ROAD
192,ABBOTS ROAD,193,ABBOTS ROAD
等等
谁能给我任何建议?
它必须处于awk状态。
尝试这个:
awk -F, 'BEGIN{OFS=","} FNR==NR{a[$1]=$2; next} $1 in a || $2 in a{print $1, a[$1], $2, a[$2]}' haftest.txt dupestest.txt
此脚本行测试dupestest.txt
中dupestest.txt
存在haftest.txt
的第一个或第二个键,如果其中一个键存在,则在dupestest.txt
其关联值,如果需要,您可能需要对脚本进行一些调整haftest.txt
只有两个键之一才能获得所需的输出,这留给您练习。
尝试这个
awk -F, 'NR==FNR{a[$1]=$0;next}$1 in a&&$2 in a{print a[$1]","a[$2]}' haft.txt dup.txt
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.