Linux 统计文件中字符串出现次数

时间:2024-03-28 10:52:18

最近准备跳槽,面试一家公司的时候被问到linux常用命令,比如一个日志文件我要统计某字符串一共出现了几次,由于很久没弄linux有点懵,回来赶紧补知识并记录一下。

网上资料有很多,我主要看了三种grep -o /grep -n /awk

grep -o 一条数据里面有多个相同,会统计相同的次数 grep 一条数据里面有多个相同,会统计一次次数

wc    [选项]    文件

-c 统计字节数

-l 统计行数

-w 统计字数

为了测试也刚好正打开了StringWriter这个java类,便创建个test.txt文件并将内容拷入,搜索词为public

Linux 统计文件中字符串出现次数

grep -o targetStr filename | wc -l 

grep -o targetStr_1|targetStr_2|targetStr_3…… filename | wc -l  # 查多个字符串,这个需加引号

Linux 统计文件中字符串出现次数

 

grep -n str filename   # 会显示出具体出现的行,但不会显示出现的次数值

Linux 统计文件中字符串出现次数

 

awk -v RS="@#$j" '{print gsub(/targetStr/,"&")}' filename

Linux 统计文件中字符串出现次数