1、使用grep
linux grep命令在我的随笔linux分类里有过简单的介绍,这里就只简单的介绍下使用grep命令统计某个文件这某个字符串出现的次数,首先介绍grep命令的几个参数,详细参数请自行找资料学习。
- -a 或 --text : 不要忽略二进制的数据。
- -A<显示行数> 或 --after-context=<显示行数> : 除了显示符合范本样式的那一列之外,并显示该行之后的内容。
- -b 或 --byte-offset : 在显示符合样式的那一行之前,标示出该行第一个字符的编号。
- -B<显示行数> 或 --before-context=<显示行数> : 除了显示符合样式的那一行之外,并显示该行之前的内容。
- -c 或 --count : 计算符合样式的列数。
- -C<显示行数> 或 --context=<显示行数>或-<显示行数> : 除了显示符合样式的那一行之外,并显示该行之前后的内容。
- -d <动作> 或 --directories=<动作> : 当指定要查找的是目录而非文件时,必须使用这项参数,否则grep指令将回报信息并停止动作。
这里统计某个字符串在文件里出现的次数使用到了-c参数,请见下图案例:
语法:grep -c 'object' fileName
案例里使用的文件:flycua-cn.19-12-13.log ,用来做统计的字符串:403
2、使用zgrep
服务器端常有很多压缩过的日志文件,当需要查找日志中某些特定信息的时候,为了避免解压文件,可以使用zgrep,zcat等命令查找、查看压缩文件中的信息。
语法:zgrep -c '要统计的字符串' 文件
案例里使用的文件:flycua-cn.19-12-11.log.gz ,用来做统计的字符串:403
3、使用vim统计
用vim打开目标文件,在命令模式下,输入::%s/object/&/gn
&代表s// 搜索出来的内容
g代表全局替换(而非仅仅当前行)
n代表不执行,只是预览一下会有什么情况发生
执行前效果和执行后效果如图所示:
4、使用grep结合wc命令来统计文件中某个字符串出现的个数
Linux wc命令用于计算字数。
利用wc指令我们可以计算文件的Byte数、字数、或是列数,若不指定文件名称、或是所给予的文件名为"-",则wc指令会从标准输入设备读取数据。
参数:
- -c或--bytes或--chars 只显示Bytes数。
- -l或--lines 只显示行数。
- -w或--words 只显示字数。
- --help 在线帮助。
- --version 显示版本信息。
grep结合wc命令:
语法:grep 'object' fileName | wc -l
案例里使用的文件:flycua-cn.19-12-13.log ,用来做统计的字符串:403
只总结了自己在工作中常用的几个,希望能够提供帮助!!!