免费注册 查看新帖 |

Chinaunix

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

提取出现最多次的字符串 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2009-11-12 10:33 |只看该作者 |倒序浏览
文件member.txt格式如下:
========开始=============
lily
ryan
lucy
lily
jordon
lily
lucy
piter
...
=========end===========

您不知里面的具体人名是怎样的,只知道格式是这样,
如何得到里面出现的次数最多的字符串?

论坛徽章:
0
2 [报告]
发表于 2009-11-12 10:38 |只看该作者
uniq -c |sort

论坛徽章:
0
3 [报告]
发表于 2009-11-12 10:39 |只看该作者

回复 #1 yorks 的帖子

awk '{a[$0]++}END{for (j in a)print j,a[j]}'

论坛徽章:
0
4 [报告]
发表于 2009-11-12 10:45 |只看该作者

回复 #2 china-yuan 的帖子

反了吧


[2]cat 1
lily
ryan
lucy
lily
jordon
lily
lucy
piter
[2]
[2]
[2]sort  1|uniq -c
      1 jordon
      3 lily
      2 lucy
      1 piter
      1 ryan

论坛徽章:
0
5 [报告]
发表于 2009-11-12 10:48 |只看该作者
原帖由 china-yuan 于 2009-11-12 10:38 发表
uniq -c |sort


得不得到最多的次数的。
[yorks@localhost bash]$ uniq -c member.txt |sort
      1 jordon
      1 lily
      1 lily
      1 lily
      1 lucy
      1 lucy
      1 piter
      1 ryan

论坛徽章:
0
6 [报告]
发表于 2009-11-12 10:52 |只看该作者
原帖由 wtuter 于 2009-11-12 10:39 发表
awk '{a[$0]++}END{for (j in a)print j,a[j]}'


[yorks@localhost bash]$ awk '{a[$0]++}END{for (j in a)print j,a[j]}' member.txt
piter 1
jordon 1
ryan 1
lucy 2
lily 3
???? 最大

怎么得到 ??? 最大这行?

论坛徽章:
0
7 [报告]
发表于 2009-11-12 10:55 |只看该作者
原帖由 yorks 于 2009-11-12 10:52 发表


[yorks@localhost bash]$ awk '{a[$0]++}END{for (j in a)print j,a[j]}' member.txt
piter 1
jordon 1
ryan 1
lucy 2
lily 3
???? 最大

怎么得到 ??? 最大这行?


可以了。
[yorks@localhost bash]$ awk '{a[$0]++}END{for (j in a)print j,a[j]}' member.txt |tail -1
lily 3
谢谢!

论坛徽章:
0
8 [报告]
发表于 2009-11-12 10:58 |只看该作者
uniq -c |sort -n 反向排序。。。然后提取第一个 或者直接排序提取最后一个。。。我因为 知道。。。不好意思

论坛徽章:
0
9 [报告]
发表于 2009-11-12 10:59 |只看该作者
原帖由 china-yuan 于 2009-11-12 10:58 发表
uniq -c |sort -n 反向排序。。。然后提取第一个 或者直接排序提取最后一个。。。我因为 知道。。。不好意思

谢谢!
但是如果最后有几个的次数都是相同的呢?如何将他们都提取出来?

论坛徽章:
0
10 [报告]
发表于 2009-11-12 11:01 |只看该作者
管道工...

sort file| uniq -c |sort -k1,1nr | head -1
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP