Tomcat Unix init.d Script (start,stop,status,restart,kill...)

Page Tags
java
tomcat
unix

 

#!/bin/bash  
# description: $zTomcatName Start Stop Restart  
# processname: $zTomcatName  
# chkconfig: 234 20 80  

JAVA_HOME="/usr/java/default"
export JAVA_HOME  
PATH=$JAVA_HOME/bin:$PATH  
export PATH  

CATALINA_HOME="/opt/tomcat-demo"
zSystemTomcatName="tomcat.name=demo"
zTomcatName="demo"
zCommand=""

# Source function library.
. /etc/init.d/functions

[ -f $START_TOMCAT ] || exit 0
[ -f $STOP_TOMCAT ] || exit 0

RETVAL=0

umask 077

start() {
    echo -n $"Starting $zTomcatName Java server: "
    sh $CATALINA_HOME/bin/startup.sh
}

start.jpda() {
    echo -n $"Starting $zTomcatName Java server: "
    sh $CATALINA_HOME/bin/catalina.sh jpda start
}

stop() {
    echo -n $"Shutting down $zTomcatName Java server: "
    sh $CATALINA_HOME/bin/shutdown.sh  
}

version() {
    echo -n $"Version of $zTomcatName Java server: "
    sh $CATALINA_HOME/bin/version.sh  
}

restart() {
    echo -n $"Restarting $zTomcatName Java server: "
    stop
    
    echo ""
    echo ""
    start
}

restart.log() {
    echo -n $"Restarting $zTomcatName Java server: "
    stop
    
    echo ""
    echo ""
    start
    echo ""
    echo ""
    
    log
}

status() {
    sh /bin/custom/zzGetStatus.sh $zSystemTomcatName
}

status.ps() {
    ps -ef --cols 2000 | grep -v grep | grep "$zSystemTomcatName"
}

kill() {
    echo "Killing tomcat."
    sh /bin/custom/zzKill.sh "$zSystemTomcatName"
}

log.tomcat() {
    echo "Tailing logs."
    tail -f $CATALINA_HOME/logs/catalina.out
}

log.app() {
    zCommand="tail -f /home/applications/$zTomcatName/log/debug"
    echo "$zCommand"
    $zCommand
}

log.clear() {
    echo "" > $CATALINA_HOME/logs/catalina.out
    echo "Logs cleared."
}

log.nginx() {
    zCommand="tail -f /var/log/nginx/*.demo.biskinler.com.log"
    echo "$zCommand"
    $zCommand
    echo ""
}

view() {
    echo "Showing logs."
    vim + $CATALINA_HOME/logs/catalina.out
}

view.nginx() {
    zCommand="vim + /var/log/nginx/*.demo.biskinler.com.log"
    echo "$zCommand"
    $zCommand
    echo ""
}

edit.setenv() {
    echo -n $"Edit $CATALINA_HOME/bin/setenv.sh"
    vim + $CATALINA_HOME/bin/setenv.sh
    echo ""
}

edit.services() {
    zCurrentFile=$0
    echo -n $"Edit $zCurrentFile"
    vim + $zCurrentFile
    echo ""
}

edit.project-config.properties() {
    zCommand="vim /home/applications/$zTomcatName/conf/project-config.properties"
    echo "$zCommand"
    $zCommand
    
}

edit.catalina.properties() {
    echo -n $"Edit $CATALINA_HOME/bin/setenv.sh"
    vim + $CATALINA_HOME/conf/catalina.properties
    echo ""
}

change_directory() {
    zCommand="cd $CATALINA_HOME"
    echo "$zCommand"
    $zCommand
    
    zCommand="mc"
    echo "$zCommand"
    $zCommand
    echo ""
}


case "$1" in
  start                                       )        start                                         ;;
  start.jpda                                  )        start.jpda                                    ;;
  stop                                        )        stop                                          ;;
  restart|reload                              )        restart                                       ;;
  restart.log                                 )        restart.log                                   ;;
  version                                     )        version                                       ;;
  status                                      )        status                                        ;;
  status.ps                                   )        status.ps                                     ;;
                                                                                                     
  log|log.tomcat                              )        log.tomcat                                    ;;
  log.app                                     )        log.app                                       ;;
  log.clear                                   )        log.clear                                     ;;
  log.nginx                                   )        log.nginx                                     ;;
  view                                        )        view                                          ;;
  view.nginx                                  )        view.nginx                                    ;;
                                                                                                     
  kill                                        )        kill                                          ;;
  edit.services                               )        edit.services                                 ;;
  edit.project-config.properties|edit.pp      )        edit.project-config.properties                ;;
  edit.setenv                                 )        edit.setenv                                   ;;
  edit.catalina.properties|edit.ca            )        edit.catalina.properties                      ;;
  cd                                          )        change_directory                              ;;
  
  *)
        echo $"Usage: $0 "
        echo $"   start                                        "
        echo $"   start.jpda                                   "
        echo $"   stop                                         "
        echo $"   restart|reload                               "
        echo $"   restart.log                                  "
        echo $"   version                                      "
        echo $"   status                                       "
        echo $"   status.ps                                    "
        echo $"   kill                                         "
		                                                       
        echo $"   log|log.tomcat                               "
        echo $"   log.app                                      "
        echo $"   log.nginx                                    "
        echo $"   log.clear                                    "
        echo $"   view                                         "
        echo $"   view.nginx                                   "
		                                                       
        echo $"   edit.services                                "
        echo $"   edit.project-config.properties|edit.pp       "
        echo $"   edit.setenv                                  "
        echo $"   edit.catalina.properties|edit.ca             "
        echo $"   cd                                           "
        echo $""
        exit 1
esac   
exit $? 



Created Mon, Aug 15, 2016 11:35 AM by Ahmet Faruk Bişkinler
Last Updated Sat, Nov 5, 2016 9:58 AM by Ahmet Faruk Bişkinler