awk如果通过比较两个文本文件列,如果相同则计数器加1

2025-05-01 20:06:21
推荐回答(2个)
回答(1):

awk -F '[, ]' 'NR==FNR{dict[$1]++}NR!=FNR{if($1 in dict){print $2"="dict[$1]}}' a.txt b.txt

文件里的每一行最后如果真有空格(估计是打错了。。)就是上面的,没有的话就是下面:

awk -F ',' 'NR==FNR{dict[$1]++}NR!=FNR{if($1 in dict){print $2"="dict[$1]}}' a.txt b.txt

回答(2):

awk -F',' 'NR==FNR{a[$1]++;next}{c[$1]=($1 in a)?a[$1]:0;print $2"= "c[$1]}0' a.txt b.txt