需要在文件中查找String的计数

时间:2016-05-23 14:37:35

标签: bash

我一直在编写一个脚本,它将获取String的出现次数。所以文件获取内容为

INFO STRING:Unexpected exception while retrieving monitors for server
INFO STRING:Unexpected exception while retrieving monitors for server
WARN STRING:service end point is down..
WARN STRING:service end point is down..
INFO STRING:java.net.SocketTimeoutException: Read timed out
INFO STRING:java.sql.SQLException
INFO STRING:java.sql.SQLException

这些值是在运行时获得的。现在我需要的是我需要编写一个脚本来查找字符串的出现次数,比如说 INFO STRING:java.sql.SQLException是2.文件内容是动态获取的并且会改变。我需要选择第一个ALERT STRING的值,然后检查出现次数到变量并将其保存到文件中。

请建议我如何继续这个

2 个答案:

答案 0 :(得分:2)

uniq命令可以计算重复的连续行数。首先,使用awk提取所需的部分,对它们进行排序(重要),然后输入uniq

awk '{print $1, $2}' logfile.txt | sort | uniq -c

答案 1 :(得分:1)

使用grep:

grep -o 'String' file |wc -l