1. 程式人生 > >linux 啟動和停止tomcat(解決服務已關閉,程序未停止的問題)

linux 啟動和停止tomcat(解決服務已關閉,程序未停止的問題)

#!/bin/bash
#
# tomcat        Startup script for the tomcat Server
#
# chkconfig: 2345 64 36
# processname: tomcat

export PATH=/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
BASEDIR=/usr/local/src/ps-tomcat

export JAVA_HOME=/usr/local/src/jdk1.6.0_05
PROG=`basename $BASEDIR`
FILE=$BASEDIR/bin/startup.sh

SLEEPTIME=1.5

start() {
        PID=`ps -ef | grep "base=$BASEDIR" | grep -v "grep" | awk '{print $2}'`
        if [ -n "$PID" ];then
                echo -ne "\033[31;49;1m [FAILED] \033[39;49;0m"
                echo "$PROG already running..."
        else
                $FILE
                echo -n "Starting $PROG:"
                echo -e "\033[32;49;1m [OK] \033[39;49;0m"
        fi
}
stop() {
        PID=`ps -ef | grep "base=$BASEDIR" | grep -v "grep" | awk '{print $2}'`
        if [ -n "$PID" ];then
                echo -n "Stopping $PROG:"
                kill -9 $PID;
                echo -e "\033[32;49;1m [OK] \033[39;49;0m"               
        else
                echo -ne "\033[31;49;1m [FAILED] \033[39;49;0m"
                echo "$PROG is not running."
        fi
}

case "$1" in
 start)
        start
        ;;
 stop)
        stop
        ;;
 restart)
        stop
        sleep $SLEEPTIME
        start
        ;;
 *)
        echo $"Usage: $PROG {start|stop|restart}"
        exit 1
esac