我有如下给定示例的日志,我只是SUCCESS
在日志文件中查找字符串并计算总数。
$ cat ansible.log
lnx-host01.tin.com | SUCCESS => {"changed": false, "ping": "pong"}
lnx-host02.tin.com | SUCCESS => {"changed": false, "ping": "pong"}
这是一种简单直接的方法,但我想知道是否可以将awk
其本身作为一个行来完成,而无需传递给wc
命令。
$ awk '/SUCCESS/{print $0}' ansible.log | wc -l
66
OR
$ awk '/SUCCESS/' ansible.log| wc -l
66
答案1
这里是:
awk 'BEGIN { count=0 } /SUCCESS/ { count++ } END { print count }' ansible.log
当然这也行得通:
grep -c SUCCESS ansible.log