Chinaunix首页 | 论坛 | 博客
  • 博客访问: 214317
  • 博文数量: 87
  • 博客积分: 192
  • 博客等级: 入伍新兵
  • 技术积分: 455
  • 用 户 组: 普通用户
  • 注册时间: 2011-04-14 07:44
文章分类

全部博文(87)

文章存档

2013年(1)

2012年(86)

分类:

2012-04-14 15:34:40

文本:
a 11 23 34 22 34 56
b 23 46 32 64 67 34
c 64 67 34 11 23 34
a 12 33 35 22 39 36
b 21 41 12 61 62 24
c 25 17 14 21 22 14
 
按第一个元素为特征进行相同特征的行的元素求和:
a    23   56   69   44   73   92
b    44   87   44   125  129  58
c    89   84   48   32   45   48
 
  1. awk '{for(i=2;i<=NF;i++)a[$1,i]+=$i;b[$1]}END{for(j in b){printf("%-5s",j);for(k=2;k<NF;k++)printf("%-5s",a[j,k]);print a[j,k]}}' file

[解析]

  把每个元素用一个二维数组特征累加,最后取出下标进行打印。

阅读(720) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~