BASH Linux退出读取日志,直到特定字符串

时间:2016-09-19 10:35:07

标签: linux string bash awk

我必须阅读日志,直到收到“Server Startup”。

当我收到字符串“startup”时,我必须退出tail命令并继续执行其余的脚本操作。

现在的语法是:

cd /opt/path/path/path
LOG_FILE=$(ls -ltr | tail -1 |awk '{print $9}')
tail -f $LOG_FILE

提前致谢

1 个答案:

答案 0 :(得分:4)

stdbuf -oL tail -f log.file | stdbuf -iL awk '/startup/ {print "Match found";exit}'

这将检查字符串startup,当找到它时,它将打印"匹配找到"然后退出日志监控。 stdbuf提供缓冲到tail和awk的行。