关于awk两个文件进行比对的问题

关于awk两个文件进行比对的问题,第1张

awk 'BEGIN{FS=OFS="|"} NR==FNR{w[$1]=$2m[$1]=$3} NR>FNR{for(a in w) if(a==$1 && w[a]!=$2) {print a,w[a],m[a],$1,$2 break} }' file1 file2 >file

NR==FNR就是在处理第一个文件file1

NR>FNR就是在处理第二个文件file2

提醒一下:file是一个shell命令(你看,这边被语法高亮了),建议平时写脚本时文件名、变量名等都尽量不要跟shell命令重合,虽然有时也没什么问题。

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


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/11858139.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-19
下一篇 2023-05-19

发表评论

登录后才能评论

评论列表(0条)

保存