awk 统计数据在文件中的出现次数
2013-12-27 17:24
281 查看
突然发现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然后再自己动手吧!
再试个:
cat album_photo_111.txt | awk '{a[$1]++}END {for(i in a) print i" "a[i]}'
还可以这样
cat album_photo_111.txt| awk '{print $1}' | sort | uniq -c
试个稍微复杂点的
zcat 131225.photo.weibo.com_10.72.13.87.cn.gz | awk '{print $3}' | sed 's/s/ /g' | awk -F . '{print $1}' | awk '{ a[$1]++ }END { for(i in a) print i"\t"a[i] }' | sort -k1 -rn
哈哈哈哈
好,今天小试牛刀统计了一下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然后再自己动手吧!
再试个:
cat album_photo_111.txt | awk '{a[$1]++}END {for(i in a) print i" "a[i]}'
还可以这样
cat album_photo_111.txt| awk '{print $1}' | sort | uniq -c
试个稍微复杂点的
zcat 131225.photo.weibo.com_10.72.13.87.cn.gz | awk '{print $3}' | sed 's/s/ /g' | awk -F . '{print $1}' | awk '{ a[$1]++ }END { for(i in a) print i"\t"a[i] }' | sort -k1 -rn
哈哈哈哈
相关文章推荐
- sort +awk+uniq 统计文件中出现次数最多的前10个单词 (2012-12-05 15:57:12)转载▼ 标签: 转载 原文地址:sort +awk+uniq 统计文件中出现次数最多的前
- 10025---sort +awk+uniq 统计文件中出现次数最多的前10个单词
- awk统计文件中某关键词出现次数的命令
- 从txt文件逐行读取数据到excel文件(包含POI的简单使用和excel文件的数据分列,出现次数统计)
- sort +awk+uniq 统计文件中出现次数最多的前10个单词
- 将文件input.bin中的数据按字节(无符号数值)统计,输出每个数值在文件中出现的次数
- sort +awk+uniq 统计文件中出现次数最多的前10个单词yes3
- 统计同一数据在同一文件中出现的次数
- awk统计文件中某关键词出现次数的命令
- 大数据第8天----------------------文件中统计单词出现的次数
- sort +awk+uniq 统计文件中出现次数最多的前10个单词
- 如何读取CSV文件,格式化数据,统计生日出现的次数
- sort +awk+uniq 统计文件中出现次数最多的前10个单词
- awk命令之 - 统计/etc/passwd文件中各用户所使用的shell类型及出现次数
- 统计文件中数据出现的次数并排序
- sort +awk+uniq 统计文件中出现次数最多的前10个单词
- 统计同一数据在同一文件中出现的次数
- 把当前文件中的所有文本拷贝,存入一个txt文件,统计每个字符出现的次数并输出
- 用awk根据文件跟列的内容统计数据
- 【练手】写一个方法,输入一个文件名和一个字符串,统计这个字符串在这个文件中出现的次数