LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 990|回复: 4

如何统计每个文字出现的频率?

[复制链接]
发表于 2006-1-4 14:42:22 | 显示全部楼层 |阅读模式
如下的文件内容
901
611
523
611
523

我知道可以用 grep -wc 901 得到“901”出现的个数
但是怎样一次性统计出每个字符出现的频率呢?类似这样的输出
901 2
523 1
601 2

awk好像可以,但是没用过,请大虾指点
 楼主| 发表于 2006-1-4 14:59:50 | 显示全部楼层
已经解决了
cat $filename | sort | uniq -c
竟然忘了uniq,不过还是希望能够看到如果使用awk怎么实现这一个功能

4楼说的对,笔误
回复 支持 反对

使用道具 举报

发表于 2006-1-4 17:41:19 | 显示全部楼层
[/usr3/inter/lipeng/study]cat  test
{
   array[$0]++

}
END{
print "result"
for ( ind in array )
        print ind,array[ind]
        }

[/usr3/inter/lipeng/study]cat 1.txt
123
234
123
456
123
[/usr3/inter/lipeng/study]awk -f test 1.txt
result
456 1
234 1
123 3
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-1-4 18:41:46 | 显示全部楼层
3x
明白了,有点像lex的语法
回复 支持 反对

使用道具 举报

发表于 2006-1-4 18:48:10 | 显示全部楼层
uniq好象是-c这个参数吧?
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表