Linux系统shell脚本之统计文本

Posted 江湖有缘

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux系统shell脚本之统计文本相关的知识,希望对你有一定的参考价值。

Linux系统shell脚本之统计文本

一、脚本要求

1.要求统计文本中文档每行出现的数字个数,并计算整个文档的数字总数
2.统计文本出现的sport字符的频率

二、编写脚本

[root@192 scripts]# cat text.sh 
#!/bin/bash
########################################
#Author:jeven
#time:Fri 13 May 2022 07:27:28 PM CST
#filename:text.sh
#Script description:
########################################

TEXT=aa.txt
KEY=sport
DATE=$(date '+%Y%m%H%M') 
N=`wc -l $TEXT |awk 'print $1'`
sum=0
#文档中每一行可能存在空格,因此不能直接用文档内容进行遍历
for i in `seq 1 $N`
	do
#输出的行用变量表示时,需要用双引号
		LINE=`sed -n "$i"p $TEXT`
#wc -L选项,统计最长行的长度
		n_n=`echo $LINE|sed s'/[^0-9]//'g|wc -L`
		echo $n_n >> wl-"$DATE".txt
		sum=$[$sum+$n_n]
		done
		echo "sum:$sum"
		KEYWORD=$(grep -iw "$KEY"  "$TEXT" |wc -l)
		echo "the file have keyword-sport num is $KEYWORD"

三、执行结果

[root@192 scripts]# ./text.sh 
sum:204
the file have keyword-sport num is 5

以上是关于Linux系统shell脚本之统计文本的主要内容,如果未能解决你的问题,请参考以下文章

linux文本处理和shell编程

Linux操作系统基础操作之shell脚本编写

shell脚本之正则表达式

Linux使用之grep,shell脚本(一)

Linux之shell脚本实战统计 Linux 进程相关数量信息

linux文本处理三剑客之sed,原来只需要掌握这些!!!