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

标签 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

提前致谢

最佳答案

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

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

关于linux - BASH Linux 退出读取日志直到特定字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39571068/

相关文章:

c - 套接字 recv() 卡在带有 MSG_WAITALL 的大消息上

python - 仅当它是最后一个字符时如何去除标点符号

python - 子类 string.Formatter

Bash 子外壳/管道 - 哪些部分在子外壳中执行?

git 命令来比较 git status 输出的第 n 个修改文件

linux - 用于在文件列表中查找单词的 shell 脚本,所有文件都作为参数给出

linux - 如何在网络上编写音频/视频应用程序?

linux - 将非连续文件移动到新目录

regex - Delphi - 用户指定的字符串操作

bash - 当我运行 shell 命令时,有没有办法让我的 emacs 识别我的 bash 别名和自定义函数?