免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12
最近访问板块 发新帖
楼主: shell新手
打印 上一主题 下一主题

请教一个sed的问题。 [复制链接]

论坛徽章:
1
辰龙
日期:2014-05-22 11:38:58
11 [报告]
发表于 2012-04-02 10:38 |只看该作者
写了个awk的
  1. [winway@winway test]$ cat awkscr
  2. BEGIN {
  3.         FS = ",";
  4. }

  5. $2 == "client1" {
  6.         meet = 1;

  7.         for(i=1; i<=NF; i++)
  8.                 a[i] = $i;

  9.         next;
  10. }

  11. $2 != "" {
  12.         meet = 0;
  13. }

  14. meet == 1 && $2 == "" {
  15.         for(i=1; i<=NF; i++) {
  16.                 if ($i){
  17.                         add = 1;

  18.                         len = split(a[i], b, OFS);
  19.                         for (j=1; j<=len; j++)
  20.                                 if (b[j] == $i)
  21.                                         add = 0;

  22.                         if (add)
  23.                                 a[i] = a[i]?a[i] OFS $i: $i;
  24.                 }
  25.         }
  26. }

  27. END {
  28.         OFS = ",";

  29.         for(i=1; i<=NF; i++)
  30.                 $i = a[i];

  31.         print $0;
  32. }
  33. [winway@winway test]$ awk -f awkscr urfile     
  34. ,client1,3,client,256,512,1024,1,2,4,0.1,0.2,0.4,100,10 11 12 13,10 20 30 40,,50,30 31
复制代码

论坛徽章:
0
12 [报告]
发表于 2012-04-02 17:10 |只看该作者
谢谢各位高手!
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP