linux统计关键字 | 您所在的位置:网站首页 › linux查找关键字数量 › linux统计关键字 |
查找关键字
grep
单个字符串:grep -o Str_1 file_name | wc -l 多个字符串:grep -o 'Str_1\|Str_2\|Str_3……' file_name | wc -l 注:必须加引号(单双都可) awkawk -v RS="@#$j" '{print gsub(/Str/,"&")}' filename awk '{s+=gsub(/targetStr/,"&")}END{print s}' filename 延伸 :通常,awk是以文件的一行为处理单位的。awk每接收文件的一行,然后执行相应的命令,来处理文本 awk语法 :awk '{pattern + action}' {filenames} pattern 表示 AWK 在数据中查找的内容, action 是在找到匹配内容时所执行的一系列命令 调用awk的三种方式 1 2 3 4 5 6 7 8 9 10 11 12 13 1.命令行方式 awk [-F field-separator] 'commands' input-file(s) 其中,commands 是真正awk命令,[-F域分隔符]是可选的。 input-file(s) 是待处理的文件。 在awk中,文件的每一行中,由域分隔符分开的每一项称为一个域。通常,在不指名-F域分隔符的情况下,默认的域分隔符是空格。
2.shell脚本方式 将所有的awk命令插入一个文件,并使awk程序可执行,然后awk命令解释器作为脚本的首行,一遍通过键入脚本名称来调用。 相当于shell脚本首行的:#!/bin/sh 可以换成:#!/bin/awk
3.将所有的awk命令插入一个单独文件,然后调用: awk -f awk-script-file input-file(s) 其中,-f选项加载awk-script-file中的awk脚本,input-file(s)跟上面的是一样的。 统计关键字出现的次数 perl perl -e 'while() {$count+= s/关键词//g;} print "$count"; ' filename 解释: perl -e ‘xxxxx……’ 表示执行单引号中的指令 filename 表示要处理的对象是filename,也就是我们需要统计的文件 while():每次读出文件的一行,直到文件结束。读取出来的内容放入默认变量$_中。 s/A//g:把默认变量($_,就是上面读出来的)中的A字符全部(g)替换为空。这个语句返回的结果是替换成功的次数。 $count+ = s/A//g:把替换成功的次数记录在$count中。 Pint $count: 打印总的次数 把以上放在一起就是:每次读取文件中的一行,计算其中字符出现的次数,并累加到变量$count中。最后打印出来。 grep&awkgrep -o '\(关键字1\|关键字2|关键字3\)' file_name | awk '{a[$0]++} END{for (i in a) {print i"\t"a[i]; }}' | sort -nr -k2 awkawk '{for(i=1;i |
CopyRight 2018-2019 实验室设备网 版权所有 |