统计同一数据在同一文件中出现的次数
2008-09-19 08:58
477 查看
突然发现awk原来可以统计同一数据在要处理的文件中所出现的次数.原来的时候为了分析数据还自己写程序,哎,无语,当时还以为自己多强,手工分析不过来的东西写程序处理.现在想来实在是年少轻狂.解决问题嘛,不讲究方式,只要快速高效的完成任务就OK了.
好,今天小试牛刀统计了一下passwd文件中shell部分重复的shell名和出现的次数,看命令:
$awk -F: '{a[$7]++}END{for (i in a) print i" "a[i]}' /etc/passwd
/bin/false 13
/bin/sh 18
/bin/bash 2
/usr/sbin/nologin 1
/bin/sync 1
解说一下:
-F: 以:分割字段
a[$7]++ 定义了个名称为a的数组$7在passwd文件中是shell名,在这里是数组索引.awk的数据索引可以是是字符类型这点真是太帅了.
for (i in a) print i" "a[i]
用for循环取出数据来,这时候i取的时下标,a[i]是里面存储的数据
是$7出现的次数,狠!
郁闷了,这办法太强了,以后再遇到问题还是先baidu,再google然后再自己动手吧!
补充:
后来发现,如果awk玩得不咋熟悉的话,用命令组合也可以实现同样的功能
awk -F: '{print $7}'|sort|uniq -c /etc/passwd
本文出自 “rainbird” 博客,请务必保留此出处http://rainbird.blog.51cto.com/211214/100337
好,今天小试牛刀统计了一下passwd文件中shell部分重复的shell名和出现的次数,看命令:
$awk -F: '{a[$7]++}END{for (i in a) print i" "a[i]}' /etc/passwd
/bin/false 13
/bin/sh 18
/bin/bash 2
/usr/sbin/nologin 1
/bin/sync 1
解说一下:
-F: 以:分割字段
a[$7]++ 定义了个名称为a的数组$7在passwd文件中是shell名,在这里是数组索引.awk的数据索引可以是是字符类型这点真是太帅了.
for (i in a) print i" "a[i]
用for循环取出数据来,这时候i取的时下标,a[i]是里面存储的数据
是$7出现的次数,狠!
郁闷了,这办法太强了,以后再遇到问题还是先baidu,再google然后再自己动手吧!
补充:
后来发现,如果awk玩得不咋熟悉的话,用命令组合也可以实现同样的功能
awk -F: '{print $7}'|sort|uniq -c /etc/passwd
本文出自 “rainbird” 博客,请务必保留此出处http://rainbird.blog.51cto.com/211214/100337
相关文章推荐
- 统计同一数据在同一文件中出现的次数
- 将文件input.bin中的数据按字节(无符号数值)统计,输出每个数值在文件中出现的次数
- 从txt文件逐行读取数据到excel文件(包含POI的简单使用和excel文件的数据分列,出现次数统计)
- awk 统计数据在文件中的出现次数
- 如何读取CSV文件,格式化数据,统计生日出现的次数
- 统计文件中数据出现的次数并排序
- 大数据第8天----------------------文件中统计单词出现的次数
- 利用shell脚本统计文件中出现次数最多的IP
- 统计一篇英文文件中,单词出现的次数,并按单词的长度进行排序
- 文本分词,并统计分词出现次数,结果输出到文件中
- 统计文件中姓名及出现次数的小例子
- memcache统计同一数据搜索次数,设置缓存
- 对于给定的一个字符串,统计其中数字字符出现的次数。输入数据有多行,第一行是一个整数n,表示测试实例的个数,后面跟着n行,每行包括一个由字母和数字组成的字符串。
- 统计文件中某一字符串出现的次数
- 统计书中单词出现次数, 然后把数据生成pdf
- linux命令 对日志文件的IP出现的次数进行统计 并显示次数最多的前六名
- 面试问题2:给一个5G的大文件,保存的数据为32位的整型,找到所有出现次数超过两次的数字
- Hadoop 统计文件中单词出现的次数
- 把当前文件中的所有文本拷贝,存入一个txt文件,统计每个字符出现的次数并输出例如: a: 21 次 b: 15 次 c:: 15 次 把: 7 次 当: 9 次 前: 3 次
- 大文件数据读取、去重、出现最多的次数前10