examples

start/stop tomcat

#!/bin/bash
#
# description: Tomcat Server 1
# Source function library.
. /etc/init.d/functions
RETVAL=$?

export CATALINA_HOME="/usr/java/apache-tomcat-6.0.44"
export CATALINA_BASE="/usr/java/tomcat_4"
export CATALINA_PID="$CATALINA_BASE/tomcat.pid"

export CATALINA_OPTS="-Xms512m -Xmx1024m -XX:PermSize=512m -XX:MaxPermSize=1024m"


case "$1" in
 start)
        if [ -f $CATALINA_HOME/bin/catalina.sh ];
          then
            echo $"Starting Tomcat"
            umask 002
            # ulimit -n 4096
            su tomcat6 -c "$CATALINA_HOME/bin/catalina.sh start"
        fi
        ;;
 stop)
        echo $"Stopping Tomcat"
        PID=`cat $CATALINA_PID`
        if [ "$PID" = "" ]; then
          su tomcat6 -c "$CATALINA_HOME/bin/catalina.sh stop"
        else
          PROCLINE=`ps -p $PID uwww | grep -v USER`
          if [[ $PROCLINE ]]; then
            if [[ `echo $PROCLINE | grep $CATALINA_BASE/temp` ]]; then
              USER=`echo $PROCLINE | awk '{ print $1 }'`
              if [ "$USER" = "tomcat6" ]; then
                su tomcat6 -c "$CATALINA_HOME/bin/catalina.sh stop -force"
              else
                echo $"invalid user $USER"
              fi
            else
              echo $"invalid process"
            fi
          else
            echo $"invalid pid"
          fi
        fi
        ;;
 *)
        echo $"Usage: $0 {start|stop}"
        exit 1
        ;;
esac
exit $RETVAL