shell脚本如果停止则自动重启tomcat

时间:2015-05-26 07:30:17

标签: linux shell tomcat cron

我正在使用shell脚本启动tomcat服务器(如果它没有运行)。我在cronjob中运行此脚本以经常检查它。这是我的剧本

getParameterByName

但每当我运行此脚本时,它都会给我一个错误。如果tomcat没有运行,那么错误是:

  

[:ILLEGAL NUMBER:* Tomcat Servlet Engine未运行。]

如果tomcat正在运行,则错误是:

  

[:ILLEGAL NUMBER:* Tomcat Servlet Engine正在使用pid 6130运行。]

我认为该错误与$ SERVICE状态有关,但我无法解决。我是一个新的蜜蜂到shell脚本。请帮帮我。

在我解决这个问题之前,我不能继续前进。

1 个答案:

答案 0 :(得分:1)

-eq需要2个整数进行比较(参见man test)。你应该在那里用=作为字符串。

或者,您是否可以更加容忍脚本的输出?

if $SERVICE status | grep -q "not running"; then
    $SERVICE start
fi

当然,使用monitsupervisor等流程监控工具会更好。