【问题标题】:tail file - count number of lines with a given pattern尾文件 - 计算具有给定模式的行数
【发布时间】:2010-09-24 18:11:38
【问题描述】:

我需要保证一个特定的字符串出现在一个活动的日志文件中, 意味着操作是有效的(将此计数提供给触发器)。

考虑到我会远程执行此操作, 我不能使用'tail -f filename',否则它会无限期地跟随文件, 因此我正在考虑抓取一堆最后写的行并将它们算作,

tail -n8 /var/log/service/service_V138/operations.log| grep \|DONE\| | wc -l

有没有更好的办法?

【问题讨论】:

  • 您的question 是对我的特殊情况最有帮助的答案。感谢您提出这个问题并分享您已经在做的事情!
  • @jmort253,这就是为什么 stackoverflow 及其兄弟姐妹如此有帮助。很高兴它帮助了你:)

标签: linux ssh tail


【解决方案1】:

您可以稍微改进一下,将管道移至wc 并改用grep -c

tail -n8 /var/log/service/service_V138/operations.log | grep -c \|DONE\|

【讨论】:

  • 谢谢。我的主要疑问是是否有任何替代方法可以在断开连接之前跟随文件几秒钟,确保文件正在被积极写入,只是没有给定的字符串。
  • tail -f -n+1 apache-tomcat-7.0.63/logs/localhost_access_log.2017-01-29.txt | grep -c lenskart 不适合我。有什么想法吗?
【解决方案2】:

less +F -N somelogfile.log ?pattern 简单易行

【讨论】:

  • 跟随日志,在脚本中插入一个暂停,几秒钟后用 'CTRL+C' 输入 ssh conn 对吗?
猜你喜欢
  • 1970-01-01
  • 2011-03-25
  • 2019-11-08
  • 2010-12-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多