tomcat的shell脚本---显示进程号

#!/bin/bash  

#  

# chkconfig: - 95 15   

# description: Tomcat start/stop/status script  

  

#Location of JAVA_HOME (bin files)  

export JAVA_HOME=/usr/local/jdk1.7.0_75

  

#Add Java binary files to PATH  

export PATH=$JAVA_HOME/bin:$PATH  

  

#CATALINA_HOME is the location of the configuration files of this instance of Tomcat  

CATALINA_HOME=/opt/tomcat  

  

#TOMCAT_USER is the default user of tomcat  

TOMCAT_USER=www

  

#TOMCAT_USAGE is the message if this script is called without any options  

TOMCAT_USAGE="Usage: $0 {e[00;32mstarte[00m|e[00;31mstope[00m|e[00;32mstatuse[00m|e[00;31mrestarte[00m}"  

  

#SHUTDOWN_WAIT is wait time in seconds for java proccess to stop  

SHUTDOWN_WAIT=20  

  

tomcat_pid() {  

        echo `ps -ef | grep $CATALINA_HOME | grep -v grep | tr -s " "|cut -d" " -f2`  

}  

  

start() {  

  pid=$(tomcat_pid)  

  if [ -n "$pid" ];then  

    echo -e "e[00;31mTomcat is already running (pid: $pid)e[00m"  

  else  

    echo -e "e[00;32mStarting tomcate[00m"  

    if [ `user_exists $TOMCAT_USER` = "1" ];then  

      su $TOMCAT_USER -c $CATALINA_HOME/bin/startup.sh  

    else  

      $CATALINA_HOME/bin/startup.sh  

    fi  

    status  

  fi  

  return 0  

}  

  

status(){  

  pid=$(tomcat_pid)  

  if [ -n "$pid" ];then  

    echo -e "e[00;32mTomcat is running with pid: $pide[00m"  

  else  

    echo -e "e[00;31mTomcat is not runninge[00m"  

  fi  

}  

  

stop() {  

  pid=$(tomcat_pid)  

  if [ -n "$pid" ];then  

    echo -e "e[00;31mStoping Tomcate[00m"  

        $CATALINA_HOME/bin/shutdown.sh  

  

    let kwait=$SHUTDOWN_WAIT  

    count=0;  

    until [ `ps -p $pid | grep -c $pid` = '0' ] || [ $count -gt $kwait ]  

    do  

      echo -n -e "e[00;31mwaiting for processes to exite[00m ";  

      sleep 1  

      let count=$count+1;  

    done  

  

    if [ $count -gt $kwait ];then  

      echo -n -e " e[00;31mkilling processes which didn't stop after $SHUTDOWN_WAIT secondse[00m"  

      kill -9 $pid  

    fi  

  else  

    echo -e "e[00;31mTomcat is not runninge[00m"  

  fi  

  

  return 0  

}  

  

user_exists(){  

  if id -u $1 >/dev/null 2>&1; then  

    echo "1"  

  else  

    echo "0"  

  fi  

}  

  

case $1 in  

        start)  

          start  

        ;;  

  

        stop)    

          stop  

        ;;  

  

        restart)  

          stop  

          start  

        ;;  

  

        status)  

      status  

        ;;  

  

        *)  

      echo -e $TOMCAT_USAGE  

        ;;  

esac      

exit 0  

推荐文章

javascript Regex unicode帮助

javascript Regex unicode帮助

推荐文章

SelectItem标签中的JSF链接

SelectItem标签中的JSF链接

推荐文章

对Excel电子表格的访问查询

对Excel电子表格的访问查询

推荐文章

来自外部应用程序的Joomla登录身份验证

来自外部应用程序的Joomla登录身份验证

推荐文章

django openid和django openid auth的区别?

django openid和django openid auth的区别?

推荐文章

如何在MySQL中使用LIKE在5个不同的字段中按无特定顺序搜索所有可能的选项

如何在MySQL中使用LIKE在5个不同的字段中按无特定顺序搜索所有可能的选项

推荐文章

pdf格式的自动化测试

pdf格式的自动化测试

推荐文章

如何在MySQL中删除主键?

如何在MySQL中删除主键?

推荐文章

如何编写Lucene查询以返回包含字母“t”的所有单词?

如何编写Lucene查询以返回包含字母“t”的所有单词?

推荐文章

如何使用MvcContrib.TestHelper测试asp.net mvc post操作

如何使用MvcContrib.TestHelper测试asp.net mvc post操作

推荐文章

linq查询问题:无法转换对象

linq查询问题:无法转换对象

推荐文章

一个数组中出现次数最多的PHP Get元素

一个数组中出现次数最多的PHP Get元素

推荐文章

如何使用mod_Rewrite检查一个静态文件的多个文件夹

如何使用mod_Rewrite检查一个静态文件的多个文件夹

推荐文章

Visual Studio:使用一个宏清理和重建

Visual Studio:使用一个宏清理和重建

推荐文章

如何向NSMenuItem添加复选标记

如何向NSMenuItem添加复选标记

推荐文章

SQL“ContainsAll”查询

SQL“ContainsAll”查询