日志中的搜索模式

日志中的搜索模式

我正在尝试获取搜索日志文件,并且需要在找到字符串后结束搜索,我正在使用下面的一个

tail -100 | grep "^$( date +'%Y-%m-%d')" /home/sabari/scripts/log/log.log |grep "Migration status code updated to: S" && pkill -P $$ tail

在我手动终止搜索之前,它不会终止搜索,任何人都可以帮助我吗?

[sabari@mypc log]$ tail -100 | grep "^$( date +'%Y-%m-%d')" /home/sabari/scripts/log/log.log |grep "status updated to: S"
2020-05-19 00:38:27,245  INFO statuslog:? - [P=109585:O=0:CT] status updated to: S
^C

答案1

我不确定这是否是您想要的,但以防万一:

tail -f /home/sabari/scripts/log/log.log | grep --line-buffered ^$(date +'%Y-%m-%d') | sed '/status updated to: S/p;q'

一旦找到 sed 命令中的模式,这将结束该命令。

答案2

您的tail命令不完整

$ tail -100

正在尝试读取您的标准输入,这可能不是您想要的。

尝试类似的东西

$ tail -100 /home/sabari/scripts/log/log.log | grep ...

相关内容