awk关联数组的应用一例

发布时间:2020-01-07编辑:脚本学堂
awk关联数组的应用一例,有需要的朋友不妨看看。

linuxjishu/13830.html target=_blank class=infotextkey>awk关联数组的应用一例,有需要的朋友不妨看看。

文件---filea:
A 123 F B
D 234 F B
M 345 F B

文件---fileb
123|0|ABC
234|1|BCD
345|2|DEF

求awk合并输出
A|123|0|ABC
D|234|1|BCD
M|345|2|CDE

可以看出filea中的第二个字段和fileb中的第一个字段是关联的,这时使可用awk的关联数组来解决这个问题
 

复制代码 代码如下:
[root@station1 ~]# cat filea
A 123 F B
D 234 F B
M 345 F B
[root@station1 ~]# cat fileb
123|0|ABC
234|1|BCD
345|2|DEF
[root@station1 ~]# awk -F'[ |]' 'NR == FNR {a[$2]=$1;next}{print a[$1]"|"$0}' filea fileb
A|123|0|ABC
D|234|1|BCD
M|345|2|DEF
[root@station1 ~]#