[英]Linux shell script for counting similar words in a file
正在使用以下格式的日志文件:
201208290101
201208290101
201208290101
201208290101
201208290101
201208291222
201208291222
201208291222
201208291222
201209300242
201209300242
201209300242
我想计算在某个特定时间发生的事件数,因此我必须计算日志文件中某个特定时间戳发生了多少次。 例如,上面的输出将类似于:
201208290101 = 5
201208291222 = 4
201209300242 = 3
关于如何计算这个有什么建议吗?
只需通过uniq -c
文件即可。
$ uniq -c
201208290101
201208290101
201208290101
201208290101
201208290101
201208291222
201208291222
201208291222
201208291222
201209300242
201209300242
201209300242
^D
5 201208290101
4 201208291222
3 201209300242
您可以awk
关联数组:
awk '{a[$0]++;} END{for(i in a) print i," = ", a[i]}' filename
如果一切都整理好了
cat yourfile.txt | uniq -c
否则,您需要先对其进行排序,然后才能使用uniq:
cat yourfile.txt | sort | uniq -c
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.