用shell脚本写tomcat守护进程,运行有问题,请大家指点!

用shell脚本写tomcat守护进程,运行有问题,请大家指点!

内容如下:

#!/bin/bash

TOMCATPATH=/usr/local/tomcat
while (true)  
  do   
        if (ps -ef | grep tomcat | grep -v grep > /dev/null)     
        then         
                sleep 30     
        else       
                data=$(date "+%F %u %H:%M:%S ")
                $TOMCATPATH/bin/startup.sh &> /dev/null &        
                echo "$data tomcat restart again" >> $TOMCATPATH/tomcat.log   
        fi  
  done

现在有的时候可以运行tomcat,有的时候会运行好几个,有的时候根本不能运行。
请大家指点!
你的操作系统是什么,tomcat居然如此的不稳定么?


QUOTE:
原帖由 HonestQiao 于 2007-7-22 18:09 发表
你的操作系统是什么,tomcat居然如此的不稳定么?

linux as 4,手动起是稳定的。
其实就是把人工判断,变成脚本。就没谱了


QUOTE:
原帖由 aredfox 于 2007-7-22 19:35 发表

linux as 4,手动起是稳定的。
其实就是把人工判断,变成脚本。就没谱了

那你就直接调用启动脚本啊。

启动脚本子机会判断是否启动的。


QUOTE:
原帖由 HonestQiao 于 2007-7-22 20:20 发表


那你就直接调用启动脚本啊。

启动脚本子机会判断是否启动的。

直接用启动脚本startup.sh 会再启动一个。


QUOTE:
原帖由 aredfox 于 2007-7-23 09:38 发表


直接用启动脚本startup.sh 会再启动一个。

不会的。
我刚刚测试了的,最后提示:

[Copy to clipboard] [ - ]
CODE:
2007-7-23 11:00:47 org.apache.coyote.http11.Http11Protocol destroy
信息: Stopping Coyote HTTP/1.1 on http-8180
2007-7-23 11:00:47 org.apache.catalina.connector.Connector stop
严重: Coyote connector has not been started

直接执行的./bin/startup.sh

他最后自动退出多余的。
最后总保留了正常运行的可以提供服务。