跟随日志文件的尾巴和执行事件

时间:2019-06-19 20:47:31

标签: sh ash

我想知道是否存在一种更简单的方法来在日志文件上运行尾-f或-F并在每次提到特殊关键字时执行命令。

到目前为止,这是我的工作解决方案,但由于以下原因,我不喜欢它:

  • 我必须为每个匹配项写新行以记录文件,以免造成无限循环
  • tail不完全遵循日志,在执行命令时可能会丢失一些行
  • 由于频率高,我不了解CPU使用率

示例:

#!/sbin/sh
while [ 1 ]
  do
    tail -n1 logfile.log | grep "some triggering text" && mount -v $stuff >> logfile.log
done

我尝试了以下操作,但是grep直到管道中断才给出返回代码

#!/sbin/sh
tail -f -n1 logfile.log | grep "some triggering text" && mount $stuff

我正在android上运行脚本,该脚本仅限于
灰烬

编辑:
问题与grep有关。 grep直到最后一行才给出返回代码。我需要的是每行的返回码。可能是grep的--follow选项,或者是sed,awk或与tail --follow一起使用的用户定义函数

0 个答案:

没有答案