zoukankan      html  css  js  c++  java
  • Linux中条件语句

    Linux中备份一个jar包,需要既判断进程是否停止,又判断文件是否存在

    1. 进程停了,文件存在则备份

    2.进程停了,文件不存在,无需备份

    3. 进程在跑,停止进程;文件存在,将文件进行备份

    4. 进程在跑,停止进程;文件不存在,无需备份

     

    backup)
    PID=$(ps -ef | grep ${APP_NAME} | grep -v grep | awk '{print $2}')
    if [ -z "$PID" ] ;then
    echo "${APP_NAME} is not running,will backup files"
    if [ -e ${APP_NAME}];then
    mv ${APP_HOME}/${APP_NAME} ${APP_HOME}/backup/${APP_NAME}-$(date +%Y%m%d%H%M%S)
    else
    echo "stop ${APP_NAME}"
    kill -9 $PID
    echo "will backup files..."
    if [ -e ${APP_NAME}];then
    mv ${APP_HOME}/${APP_NAME} ${APP_HOME}/backup/${APP_NAME}-$(date +%Y%m%d%H%M%S)

    fi
    ;;

     

    backup)
    PID=$(ps -ef | grep ${APP_NAME} | grep -v grep | awk '{print $2}')
    if [ -z "$PID" ] ;then
            echo "${APP_NAME} is not running,will backup files"
    	if [ -e ${APP_NAME}];then
    	mv ${APP_HOME}/${APP_NAME} ${APP_HOME}/backup/${APP_NAME}-$(date +%Y%m%d%H%M%S)       
    else
            echo "stop ${APP_NAME}"
            kill -9 $PID
            echo "will backup files..."
    		if [ -e ${APP_NAME}];then
            mv ${APP_HOME}/${APP_NAME} ${APP_HOME}/backup/${APP_NAME}-$(date +%Y%m%d%H%M%S)
    	
    
    fi
    ;;
    

      忽然又觉得为啥要先判断进程呢,先判断文件啊~~~~

    文件存在,进程在,杀进程,备份文件

    文件存在,进程不再,备份文件

    文件不存在,无需操作

    就少了一步

     

    保存下

    #!/bin/bash
    
    #server 10.215.65.131
    
    JAVA=/usr/java/jdk1.8.0_211-amd64/bin/java
    APP_HOME=/opt/xxx/xxx-xxx
    APP_NAME=xxx-xxx.jar
    APP_PARAM="--spring.config.location=${APP_HOME}/application.properties"
    
    case $1 in
    start)
    PID=$(ps -ef | grep ${APP_NAME} | grep -v grep | awk '{print $2}')
    if [ -z "$PID" ] ;then
            echo "start ${APP_NAME}"
            nohup ${JAVA} -jar ${APP_HOME}/${APP_NAME} ${APP_PARAM} > ${APP_HOME}/catalina.out 2>&1  &
    else
            echo "${APP_NAME} is running"
    fi
    ;;
     
    stop)
    PID=$(ps -ef | grep ${APP_NAME} | grep -v grep | awk '{print $2}')
    if [ -z "$PID" ] ;then
            echo "${APP_NAME} is not running"
    else
            echo "stop ${APP_NAME}"
            kill -9 $PID
    fi
    ;;
     
    restart)
    PID=$(ps -ef | grep ${APP_NAME} | grep -v grep | awk '{print $2}')
    if [ -z "$PID" ] ;then
            echo "start ${APP_NAME}"
            nohup ${JAVA} -jar ${APP_HOME}/${APP_NAME} ${APP_PARAM}   > ${APP_HOME}/catalina.out 2>&1  &
    else
            echo "stop ${APP_NAME}"
            kill -9 $PID
            echo "start ${APP_NAME}"
            nohup ${JAVA} -jar ${APP_HOME}/${APP_NAME} ${APP_PARAM}   > ${APP_HOME}/catalina.out 2>&1  &
    fi
    ;;
    
    backup)
    PID=$(ps -ef | grep ${APP_NAME} | grep -v grep | awk '{print $2}')
    if [ -z "$PID" ] ;then
            echo "${APP_NAME} is not running,will backup files"
    	if [ -e ${APP_NAME}];then
    	mv ${APP_HOME}/${APP_NAME} ${APP_HOME}/backup/${APP_NAME}-$(date +%Y%m%d%H%M%S)       
    else
            echo "stop ${APP_NAME}"
            kill -9 $PID
            echo "will backup files..."
    		if [ -e ${APP_NAME}];then
            mv ${APP_HOME}/${APP_NAME} ${APP_HOME}/backup/${APP_NAME}-$(date +%Y%m%d%H%M%S)
    	
    
    fi
    ;;
     
    logs)
    tail -f ${APP_HOME}/catalina.out
    ;;
     
    status)
    PID=$(ps -ef | grep ${APP_NAME} | grep -v grep | awk '{print $2}')
    if [ -z "$PID" ] ;then
            echo "${APP_NAME} is not running"
    else
            echo "${APP_NAME} is running, pid $PID"
    fi
    ;;
     
    *)
    echo "您输入的指令没有对应的方法哟"
     
    esac 
    

      

  • 相关阅读:
    iis出现2145318902错误
    div在父容器中水平垂直居中
    SSRS中错误:为用户“NT AUTHORITY\NETWORK SERVICE”授予的权限不足,无法执行此操作。 (rsAccessDenied)解决方案
    数字签名
    SQL无法连接问题
    DataTable导出到excel中,及乱码问题
    Could not load file or assembly 'Microsoft.ReportViewer.Common, Version=11.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91' or one of its depe
    Windows 7无法启动“bootmgr is compressed”解决办法
    U盘安装xp
    IIS7下浏览网站出现503,应用程序池无法启动.事件查看器中出现"Windows 找不到本地配置文件,正在用临时配置文件让您登录。当您注销时,对此配置文件所作的更改将丢失。"
  • 原文地址:https://www.cnblogs.com/qianjinyan/p/11268057.html
Copyright © 2011-2022 走看看