服务启动脚本

记录一次服务启动脚本start_close.sh,文件结构:

/home/test/start_close.sh

/home/test/eureka/cloud-eureka.jar

/home/test/gateway/cloud-gateway.jar

/home/test/system/cloud-system.jar

/home/test/demo/cloud-demo.jar    

内容如下:

#!/bin/bash
echo "=======任务操作开始========"
BACKEND_ROOT_PATH="/home/test"
# 参数名称 文件目录名称 Xms大小 Xmx大小 进程名称/启动文件
app_array=('eureka eureka 512m 512m cloud-eureka.jar' 'gateway gateway 512m 512m cloud-gateway.jar' 'system system 512m 512m cloud-system.jar' 'demo demo 1024m 1024m cloud-demo.jar')
app_size=${#app_array[*]}
echo "操作模式选择:"
echo "1. 全部服务关闭并启动"
echo "2. 全部服务关闭"
echo "3. 传入的服务关闭并启动"
echo "4. 传入的服务关闭"
echo "备注:服务参数名称:eureka gateway system demo, 可携带于执行命令之后,空格分隔"
read -p "请输入需要的操作模式序号?" r1
if [ "$r1" == "1" ]; then
    for ((i=0;i<$app_size;i++)); do
      app=(${app_array[$i]})
      process=`ps -ef |grep -w ${app[4]}|grep -v grep|wc -l`
      if [ ! $process -le 0 ];then
        process_id=`ps -ef | grep ${app[4]} | grep -v "$0" | grep -v "grep" | awk '{print $2}'`
        kill -9 $process_id
        echo "关闭进程 ID: $process_id , 应用名称:${app[4]}"
        fi
      cd $BACKEND_ROOT_PATH/${app[1]}
      nohup java -Xms${app[2]} -Xmx${app[3]} -jar ${app[4]} >/dev/null 2>&1 &
      echo "服务 ${app[4]} 启动完成"
    done
elif [ "$r1" == "2" ]; then
    for ((i=0;i<$app_size;i++)); do
      app=(${app_array[$i]})
      process=`ps -ef |grep -w ${app[4]}|grep -v grep|wc -l`
      if [ ! $process -le 0 ];then
        process_id=`ps -ef | grep ${app[4]} | grep -v "$0" | grep -v "grep" | awk '{print $2}'`
        kill -9 $process_id
        echo "关闭进程 ID: $process_id , 应用名称:${app[4]}"
        fi
    done
elif [ "$r1" == "3" ]; then
    for var in "$*"; do
        for ((i=0;i<$app_size;i++)); do
        app=(${app_array[$i]})
        if [ $var == ${app[0]} ]; then
          process=`ps -ef |grep -w ${app[4]}|grep -v grep|wc -l`
              if [ ! $process -le 0 ];then
            process_id=`ps -ef | grep ${app[4]} | grep -v "$0" | grep -v "grep" | awk '{print $2}'`
                kill -9 $process_id
                echo "关闭进程 ID: $process_id , 应用名称:${app[4]}"
                fi
              cd $BACKEND_ROOT_PATH/${app[1]}
              nohup java -Xms${app[2]} -Xmx${app[3]} -jar ${app[4]} >/dev/null 2>&1 &
          echo "服务 ${app[4]} 启动完成"
            fi
        done
    done
elif [ "$r1" == "4" ]; then
    for var in "$*"; do
        for ((i=0;i<$app_size;i++)); do
        app=(${app_array[$i]})
        if [ $var == ${app[0]} ]; then
          process=`ps -ef |grep -w ${app[4]}|grep -v grep|wc -l`
              if [ ! $process -le 0 ];then
            process_id=`ps -ef | grep ${app[4]} | grep -v "$0" | grep -v "grep" | awk '{print $2}'`
                kill -9 $process_id
                echo "关闭进程 ID: $process_id , 应用名称:${app[4]}"
                fi
        fi
        done
    done
else
    echo "不支持的操作"
fi
echo "=======任务操作结束========"
ps -aux|grep cloud-

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值