【发布时间】:2012-09-13 19:49:29
【问题描述】:
我正在尝试获取一个 shell 脚本来识别应用实例何时出现。这样它就可以继续发出命令了。
我一直在想它会是这样的:
#/bin/bash
startApp.sh
while [ `tail -f server.log` -ne 'regex line indicating success' ]
do
sleep 5
done
echo "App up"
但是,即使这有效,也无法解决一些问题:
- 如果应用不上来怎么办,要等多久
- 如果启动应用时出现错误怎么办
- 如何捕获日志行并回显它
我接近了吗,还是有更好的方法?我想这是其他管理员必须克服的问题。
编辑:
我在超级用户那里找到了这个
https://superuser.com/questions/270529/monitoring-a-file-until-a-string-is-found
tail -f logfile.log | while read LOGLINE
do
[[ "${LOGLINE}" == *"Server Started"* ]] && pkill -P $$ tail
done
我唯一的问题是它可能永远不会退出。有没有办法增加最大时间?
【问题讨论】:
标签: shell