免费注册 查看新帖 |

ChinaUnix.net

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 2926 | 回复: 10

请教个awk的问题 [复制链接]

论坛徽章:
0
发表于 2010-12-27 22:11 |显示全部楼层
有一些数据,类似于这样的,有很多行

旅游部 ,官网-旅游热点-美国旅游,.....
能源部,能源-石油-进口石油,.....
旅游部,官网-旅游分类-按地区分类,.....
能源部,能源-天然气-国产天然气,.....
旅游部,官网-链接-友情链接,.....
旅游部,论坛-交流-驴友分享,.....
......
.....



要求:把第一列相同,第二列第一个“-”之前的内容相同的行统计出来
例如:
旅游部,官网 3
旅游部,论坛 1
能源部,能源 2


哪位大虾指点下?

论坛徽章:
0
发表于 2010-12-27 22:24 |显示全部楼层
回复 1# lasama


    awk -F'-' '{a[$1]+=1}END{for(i in a)print i,a}'

论坛徽章:
0
发表于 2010-12-27 22:34 |显示全部楼层
本帖最后由 jing494485758 于 2010-12-27 22:38 编辑

a【i】怎么打不出来

论坛徽章:
1
2015年辞旧岁徽章
日期:2015-03-03 16:54:15
发表于 2010-12-27 22:38 |显示全部楼层
似乎有点问题。
  1. $ awk 'BEGIN{FS="-"}{++str[$1]}END{for(i in str)print i,str[i]}' line.txt
  2. 旅游部, 官网 1
  3. 旅游部,官网 2
  4. 能源部,能源 2
  5. 旅游部,论坛 1
复制代码
前两个不知道为什么不能合并?

论坛徽章:
1
2015年辞旧岁徽章
日期:2015-03-03 16:54:15
发表于 2010-12-27 22:40 |显示全部楼层
有一些数据,类似于这样的,有很多行

旅游部 ,官网-旅游热点-美国旅游,.....
能源部,能源-石油-进口石 ...
lasama 发表于 2010-12-27 22:11



    原来是一个逗号的问题,修改了就好了。
  1. $ awk 'BEGIN{FS="-"}{++str[$1]}END{for(i in str)print i,str[i]}' line.txt
  2. 旅游部,官网 3
  3. 能源部,能源 2
  4. 旅游部,论坛 1
复制代码

论坛徽章:
1
2015年辞旧岁徽章
日期:2015-03-03 16:54:15
发表于 2010-12-27 22:43 |显示全部楼层
a【i】怎么打不出来
jing494485758 发表于 2010-12-27 22:34



    什么?怎么打不出来?

论坛徽章:
0
发表于 2010-12-27 22:59 |显示全部楼层
原来是一个逗号的问题,修改了就好了。
L_kernel 发表于 2010-12-27 22:40



   

论坛徽章:
2
射手座
日期:2014-10-10 15:59:4715-16赛季CBA联赛之上海
日期:2016-03-03 10:27:14
发表于 2010-12-28 06:12 |显示全部楼层
cut 加 sort 加 uniq -c 应该也可以

论坛徽章:
23
15-16赛季CBA联赛之吉林
日期:2017-12-21 16:39:27白羊座
日期:2014-10-27 11:14:37申猴
日期:2014-10-23 08:36:23金牛座
日期:2014-09-30 08:26:49午马
日期:2014-09-29 09:40:16射手座
日期:2014-11-25 08:56:112015年辞旧岁徽章
日期:2015-03-03 16:54:152015年迎新春徽章
日期:2015-03-04 09:49:0315-16赛季CBA联赛之山东
日期:2017-12-21 16:39:1915-16赛季CBA联赛之广东
日期:2016-01-19 13:33:372015亚冠之山东鲁能
日期:2015-10-13 09:39:062015亚冠之西悉尼流浪者
日期:2015-09-21 08:27:57
发表于 2010-12-28 08:40 |显示全部楼层
回复 3# jing494485758


放在 code 标签里就好了
  1. a[i]
复制代码

论坛徽章:
0
发表于 2010-12-28 09:24 |显示全部楼层
cut 加 sort 加 uniq -c 应该也可以
yinyuemi 发表于 2010-12-28 06:12



    sort d | cut -d"-" -f 1 | uniq -c
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

基于案例的 SQL 优化实战训练营

讲师:中电福富特级专家梁敬彬,参与本次课程培训,你将收获:
1. 能编写出较为高效的 SQL;
2. 能解决70%以上的数据库常见优化问题;
3. 能得到老师提供的高效的相关工具和解决方案;
4. 能举一反三,收获不仅仅是 SQL 优化。
现在购票享受8.8折优惠!
----------------------------------------
优惠时间:2019年3月20日前

大会官网>>
  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP