Chinaunix

标题: AWK文件关联 [打印本页]

作者: hhuxyb    时间: 2013-05-13 15:34
标题: AWK文件关联
文件a:
1|2|ccc
2|1|aaa
3|4|ddd

文件b:
1|王大
2|何二
3|张三
4|李四

希望得到的结果
1|2|ccc|王大|何二
2|1|aaa|何二|王大
3|4|ddd|张三|李四


作者: 代号:军刀    时间: 2013-05-13 15:39
月经贴
  1. awk -F "|" 'NR==FNR{a[$1]=$2;next}{print $0"|"a[$1]"|"a[$2]}' b a
复制代码

作者: dn833    时间: 2013-05-13 15:48
  1. awk 'BEGIN{FS=OFS="|"}NR==FNR{a[$1]=$2;next}{print $0,a[$1],a[$2]}' b a
复制代码

作者: yestreenstars    时间: 2013-05-13 16:06
  1. awk 'BEGIN{FS=OFS="|"}NR==FNR{a[$1]=$2;next}{print $0,a[$1],a[$2]}' b a
复制代码

作者: seesea2517    时间: 2013-05-13 17:00
回复 2# 代号:军刀


    这个还是双倍流量的。
作者: 心若寒江雪    时间: 2013-05-13 17:30
本帖最后由 心若寒江雪 于 2013-05-13 17:31 编辑

awk 'BEGIN{FS=OFS="|"}NR==FNR{a[$1]=$2;next}{print $0,a[$1],a[$2]}' b a   算灌水不!!
作者: zooyo    时间: 2013-05-13 18:35
提示: 作者被禁止或删除 内容自动屏蔽
作者: meteorcan    时间: 2013-05-13 21:40
awk -F"|" ‘{if(NF==2)b[$1]=$2;else print $0"|"b[$1]"|"b[$2]}’  b a

注意最后的书写顺序,先处理b,在处理a




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2