一个朋友问怎样统计一个文本文档里指定字符串的个数。我本能的想到用while read LINE,写了个脚本,如下
- #!/bin/bash
- COUNT=0
- f=0
- while read LINE;do
- echo $LINE > b.tmp
- while [ $f -eq 0 ] ;do
- cat b.tmp | grep -w 'google' &> /dev/null
- if [ $? -eq 0 ];then
- sed -i 's/google//1' b.tmp
- ((COUNT++))
- else
- f=1
- fi
- done
- f=0
- done < b.txt
- echo "$COUNT google"
b.txt如下
- google shdlf sha; google saf goole
- google shdlf sha; google saf goole
- google shdlf sha; google saf goole
- google shdlf sha; google saf goole
- google shdlf sha; google saf goole
- google shdlf sha; google saf goole
- google shdlf sha; google saf goole
- google shdlf sha; google saf goole
- google shdlf sha; google saf goole
- google shdlf sha; google saf goole
试之
- ./cc.sh
- 20 google
还没来的及高兴,朋友发来
- cat b.txt |grep -o 'google'|sort|uniq -c
顿时傻眼,继而被笑道:“你应该做个开发人员”。
开发人员,开发人员。。。。