zoukankan      html  css  js  c++  java
  • 案例2-tomcat自启动脚本

    适用于ubuntu,centos

    涉及知识点

    1. 函数

    2. case语句

    #!/bin/bash
    #chkconfig: 2345 10 90
    #description:Tomcat service
    #pidfile: /var/run/tomcat.pid
    #processname: tomcat
    #说明:
    #第一行是服务的配置:第一个数字是服务的运行级,2345表明这个服务的运行级是2、3、4和5级(Linux的运行级为0到6);第二个数字是启动优先级,数值从0到99;第三个数是停止优先级,数值也是从0到99。(运行级介绍见附录4.2)
    #第二行是对服务的描述
    #如果不写这两行,在执行“chkconfig --add tomcat”时,会出现“tomcat服务不支持chkconfig”的错误提示
    #后面那两行是参照公司脚本加上的,可以测试下是否有用。
    
    #tomcat auto-start
    
     export JAVA_HOME=/usr/lib/jvm/jdk1.7.0_80
     TOMCATS="apache-tomcat-7.0.81"
    
    getPID(){
           PID=$(ps -ef | grep tomcat | awk '/java/' | awk '{print $2}' )
           #awk ’/java/'是搜索有java关键字的所有行
    }
    
    stopt(){
                    HOME=/home/axinfu/apache-tomcat-7.0.81
                    getPID
                    if [[ "${PID}X" == "X" ]]; then
                            echo "$TOMCATS is not running"
                    else
                            kill -9 $PID
                              sleep 0.5
                            #echo $PID ---测试
                            PID=$(ps -ef | grep tomcat | awk '/java/' | awk '{print $2}' )
                            # echo $PID --测试
                            [ -z "$PID" ] && echo "TOMCAT HAS STOPPED" || echo "TOMCAT IS STOPPING"
    #注意:在杀掉进程后,需要重新定义PID的变量值,-z可以判断字符串是否为空
                    fi
          }
    statust(){
                    getPID
                    if [[ "${PID}X" == "X" ]]; then
                            echo "TOMCATS is not running"
                    else
                            echo "TOMCATS is running... PID: ${PID}"
                    fi
            }
    
     case $1 in
     start)
         /bin/su -s /bin/sh - axinfu -c "cd /home/axinfu/apache-tomcat-7.0.81/bin/&&./startup.sh"
         ;;
     stop)
          stopt  
         ;;
     restart)
          stopt
         /bin/su -s /bin/sh - axinfu -c "cd /home/axinfu/apache-tomcat-7.0.81/bin/&&./startup.sh"
    # -s : --shell  -c:给shell传一个命令    -axinfu:就是切换到axinfu用户下。
         ;;
     status)
         statust
         ;;
     *)
         echo 'Usage:tomcat start|stop|restart|status'
         ;;
     esac
    
    exit 0

    ubuntu加入开机启动的命令

    1)开机启动tomcat,如果是简单的一条启动命令,可以在/etc/rc.local中添加,

    2)如果想运行脚本,则可先将脚本复制或者软连接到/etc/init.d/目录下,然后用:

    update-rc.d tomcat defaults NN命令(NN为启动顺序,比如95) #加入自启动命令
    update-rc.d -f tomcat remove  #去取自启动

    centos加入开机启动命令

    tomcat加到开机启动 chkconfig --add tomcat    chkconfig --list tomcat 查看是否成功

  • 相关阅读:
    nginx中的超时配置
    ubuntu系统TCP连接参数优化-TIME_WAIT过多解决办法
    python中的raise用法
    pip安装各种模块
    ubuntu上安装python的ldap模块
    docker 打印带时间的日志
    基于Xilinx Zynq Z7045 SoC的CNN的视觉识别应用
    VIVADO下IBERT使用指南
    菜根谭全文及译文
    bit,Byte,Word,DWORD(DOUBLE WORD,DW)
  • 原文地址:https://www.cnblogs.com/regit/p/8491474.html
Copyright © 2011-2022 走看看