Chinaunix首页 | 论坛 | 博客
  • 博客访问: 2980694
  • 博文数量: 272
  • 博客积分: 5544
  • 博客等级: 大校
  • 技术积分: 5496
  • 用 户 组: 普通用户
  • 注册时间: 2011-03-08 00:48
个人简介

  每个人都要有一个骨灰级的爱好,不为金钱,而纯粹是为了在这个领域享受追寻真理的快乐。

文章分类

全部博文(272)

文章存档

2015年(2)

2014年(5)

2013年(25)

2012年(58)

2011年(182)

分类: LINUX

2011-08-13 10:02:11

文本:
b|3
a|2
a|3
a|2
b|1
b|2
 
文本去重后统计a和b出现的次数,最后输出:
a|2
b|3
 
 
  1. awk -F'|' '!a[$0]++{b[$1]++}END{for(i in b)print i FS b[i]}' file

[解析]

  这个题也有那么一点点意思,当初没看明白结果是怎么来的,后来才看懂,原来先是对数据去重,然后再对a和b进行统计出现了多少次。其实换个思路来考虑,就是统计a和b的次数类似a[$1]++这样的语句是非常简单的,但是有个前提是去重,那么就肯定要有个条件去考虑重复的问题,是不是这样考虑,一个数组去重,一个数组统计呢?对了,就是这样子的。

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