• Shell 简单的java微服务jar包 -- 启动脚本


    #!/bin/bash
    
    # 接收服务名
    PJT_name=$1
    PJT_DIR=/apps/project/
    # 接受 start status stop 参数
    service=$2
    # 获取主机名判断Eureka服务启动的 参数
    HOSTNAME=`hostname`
    dic=("grab_cycle_eureka" "grab_cycle_ubikeuser1" "grab_cycle_config" "grab_cycle_gateway" "grab_cycle_ubikeuser" "grab_cycle_timing" "grab_cycle_MKexternal" "grab_cycle_MKcore" "grab_cycle_MKpay" "grab_cycle_MKstatistic" "grab_cycle_MKridingorder" "grab_cycle_MKfeedback" "grab_cycle_MKjarvis" "grab_cycle_MKbike" "grab_cycle_ubikelock" "grab_cycle_ubikeinfra" "grab_cycle_ubikeHwtest" "grab_cycle_WulianBle" "grab_cycle_mqttserver" "grab_cycle_mqttserver")
    
    start_p(){
      for key in $(echo ${dic[*]})
      do
        #if [[ $PJT_name == ${key} ]]  && [[ ${key} == "grab_cycle_eureka" ]] && [[ ${HOSTNAME} == "Xgrabcycle-prod-cycle-002" ]];then
        if [ $PJT_name == ${key} -a ${key} == "grab_cycle_eureka"  -a  ${HOSTNAME} == "Xgrabcycle-prod-cycle-002" ];then 
            nohup "/apps/sofe/jdk1.8.0_131/bin/java -jar  -Xms2048M -Xmx4096M -XX:+UseConcMarkSweepGC -XX:-PrintGCDetails -Dspring.profiles.active=prod2  ${key}.jar  >> /apps/project/${key}/${key}.log 2>&1 &"
            sleep 3
            start_pid=`ps -ef | grep "${PJT_DIR}${PJT_name}" | egrep -v "grep"|awk -F'[ ;]+' '{print $2}'`
            echo $start_pid
            if [[ -n $start_pid ]];then
                echo "$PJT_name started is success"
            else
                echo "$PJT_name started is failed"
            fi
        else
            if [[ $PJT_name == "${key}" ]];then
            nohup "/apps/sofe/jdk1.8.0_131/bin/java -jar  -Xms2048M -Xmx4096M -XX:+UseConcMarkSweepGC -XX:-PrintGCDetails -Dspring.profiles.active=prod1  ${key}.jar  >> /apps/project/${key}/${key}.log 2>&1 &"
            sleep 3
            start_pid=`ps -ef | grep "${PJT_DIR}${PJT_name}" | egrep -v "grep" |awk -F'[ ;]+' '{print $2}'`
            echo $start_pid
            if [[ -n $start_pid ]];then
                    echo "$PJT_name started is success"
            else
                    echo "$PJT_name started is failed"
            fi
            fi
        fi
      done
    }
    
    stop_p(){
      for key in $(echo ${dic[*]})
      do
        if [[ $PJT_name == "${key}" ]];then
            pid_number=`ps -ef | grep "${PJT_DIR}${PJT_name}" | egrep -v "grep"|awk -F'[ ;]+' '{print $2}'`
            echo $pid_number
            kill -9 $pid_number
            if [ $? -eq 0 ];then
                echo "$PJT_name shutdown is success"
            else
                echo "$PJT_name shutdown is failed"
            fi
        fi
      done
    }
    
    status_p(){
      for key in $(echo ${dic[*]})
      do
        if [[ $PJT_name == "${key}" ]];then
            pid_number=`ps -ef | grep "${PJT_DIR}${PJT_name}" | egrep -v "grep|bash" | awk -F'[ ;]+' '{print $2}'`
            echo $pid_number
            if [[ -n $pid_number ]];then
                echo "$PJT_name  is running"
            else
                echo "$PJT_name  is stoped"
            fi
        fi
      done
    }
    
    case "$2" in 
      start)
            start_p
      ;;
      stop)
            stop_p
      ;;
      status)
            status_p
      ;;
      *)
      echo $"Usage: $0 project_name {start|stop|status}"
            exit 2
    esac
  • 相关阅读:
    分布式文件系统--->fastDFS
    varnish4.0缓存代理配置
    varnish4.0缓存代理配置
    varnish4.0缓存代理配置
    SDN 是什么
    SDN 是什么
    SDN 是什么
    Solidworks如何保存为网页可以浏览的3D格式
    github 的 配置SSH
    当一个实例被创建,__init__()就会被自动调用
  • 原文地址:https://www.cnblogs.com/dy11/p/9480324.html
Copyright © 2020-2023  润新知