Linux 统计某个字符串个数

Posted by 撒得一地 on 2017年5月22日 in Linux教程

在 Linux 系统下,有时候,我们可能要对一个日志文件进行分析。比如,分析日志文件中某个单词或者某个特殊字符串出现了多少次。

对于匹配统计,一般用到正则方法,下面总结了几个统计字符串个数的方法。

方法一:使用 grep 命令

	grep -o '字符串' file |wc -l

方法二:使用awk命令进行统计

	awk -v RS="@#$j" '{print gsub(/字符串/,"&")}' file

方法三:另一种使用awk命令进行统计的方法

	awk  '{s+=gsub(/字符串/,"&")}END{print s}' file

备注:上面的 file 是要统计的文件名。上面的字符串换成你具体要统计的内容。

awk简介

awk是一个强大的文本分析工具,相对于grep的查找,sed的编辑,awk在其对数据分析并生成报告时,显得尤为强大。

简单来说awk就是把文件逐行的读入,以空格为默认分隔符将每行切片,切开的部分再进行各种分析处理。

关于 awk 命令可以参考:http://www.cnblogs.com/ggjucheng/archive/2013/01/13/2858470.html

实例

假设现在一个文件里面的内容如下:

	[root@ihh logs]# cat test.txt 
	userid:121212
	userid:232323
	userid:3434
	username:3434
	username:4343

然后我要统计 userid 在 test.txt 文件里出现了多少次,那么根据上面提供的命令,可以这样操作:

	[root@ihh logs]# grep -o 'userid' test.txt |wc -l
	3

	[root@ihh logs]# awk -v RS="@#$j" '{print gsub(/userid/,"&")}' test.txt 
	3

	[root@ihh logs]# awk  '{s+=gsub(/userid/,"&")}END{print s}' test.txt 
	3

上一篇:

下一篇:

相关推荐

网站地图|XML地图

Copyright © 2015-2024 技术拉近你我! All rights reserved.
闽ICP备15015576号-1 版权所有©psz.