免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1478 | 回复: 0
打印 上一主题 下一主题

两文件比较匹配替换问题 总感觉我把问题说不明白呢 [复制链接]

论坛徽章:
1
辰龙
日期:2014-05-22 11:38:58
1 [报告]
发表于 2012-03-11 10:11 |显示全部楼层
回复 1# dahaoshanhe
  1. [winway@winway test]$ cat awkscr
  2. NR == FNR {
  3.         for (i=5; i<=NF; i+=2) {
  4.                 line[FNR FS $3 FS $i] = $i FS $(i+1)
  5.         }
  6.         linecnt = FNR;
  7.         next;
  8. }

  9. NR > FNR {
  10.         for (i=1; i<=linecnt; i++) {
  11.                 for (j in line) {
  12.                         if (j ~ i FS $3) {
  13.                                 split(line[j], a, FS);
  14.                                 for (k=5; k<=NF; k+=2) {
  15.                                         if ($k == a[1]) {
  16.                                                 $(k+1) = a[2];
  17.                                                 break;
  18.                                         }
  19.                                 }
  20.                                 delete line[j];
  21.                                 find = 1;
  22.                         }
  23.                 }
  24.                 if (find == 1) {
  25.                         find = 0;
  26.                         break;
  27.                 }
  28.         }
  29.         print $0;
  30. }
  31. [winway@winway test]$ awk -f awkscr file2 file1
  32. SP 2012 421 1 80 x 120 y 160 c
  33. SP 2012 421 4 80 h 120 p 160 h 560 d 580 e 600
  34. SP 2012 234 18 40 d 80 z 120 m 160 d
复制代码
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP