linux 微服务脚本(一次启动多个jar)

一、编写脚本

#!/bin/sh
export GATEWAY=ruoyi-gateway-2.2.0.jar
export AUTH=ruoyi-auth-2.2.0.jar
export MONITOR=ruoyi-visual-monitor-2.2.0
export GEN=ruoyi-modules-gen-2.2.0.jar
export SYSTEM=ruoyi-modules-system-2.2.0.jar
export JOB=ruoyi-modules-job-2.2.0.jar
export MC=ruoyi-modules-mc-2.2.0.jar
export OP=ruoyi-modules-op-2.2.0.jar

export GATEWAY_port=8080
export AUTH_port=9200
export MONITOR_port=9100
export GEN_port=9202
export SYSTEM_port=9201
export JOB_port=9203
export MC_port=9205
export OP_port=9204

case "$1" in

start)
        ## 启动gateway
        echo "--------开始启动GATEWAY---------------"
        nohup java -jar $GATEWAY &
        GATEWAY_pid=`lsof -i:$GATEWAY_port|grep "LISTEN"|awk '{print $2}'`
        until [ -n "$GATEWAY_pid" ]
            do
              GATEWAY_pid=`lsof -i:$GATEWAY_port|grep "LISTEN"|awk '{print $2}'`  
            done
        echo "GATEWAY pid is $GATEWAY_pid"    
        echo "---------GATEWAY 启动成功-----------"
 
        ## 启动auth
        echo "--------开始启动AUTH---------------"
        nohup java -jar $AUTH &
        AUTH_pid=`lsof -i:$AUTH_port|grep "LISTEN"|awk '{print $2}'`
        until [ -n "$AUTH_pid" ]
            do
              AUTH_pid=`lsof -i:$AUTH_port|grep "LISTEN"|awk '{print $2}'`  
            done
        echo "AUTH pid is $AUTH_pid"     
        echo "---------AUTH 启动成功-----------"
                 
        ## 启动monitor
        echo "--------开始启动MONITOR---------------"
        nohup java -jar $MONITOR &
        MONITOR_pid=`lsof -i:$MONITOR_port|grep "LISTEN"|awk '{print $2}'`
        until [ -n "$MONITOR_pid" ]
            do
              MONITOR_pid=`lsof -i:$MONITOR_port|grep "LISTEN"|awk '{print $2}'`  
            done
        echo "MONITOR pid is $MONITOR_pid"     
        echo "---------MONITOR 启动成功-----------"
        
         ## 启动gen
        echo "--------开始启动GEN---------------"
        nohup java -jar $GEN &
        GEN_pid=`lsof -i:$GEN_port|grep "LISTEN"|awk '{print $2}'`
        until [ -n "$GEN_pid" ]
            do
              GEN_pid=`lsof -i:$GEN_port|grep "LISTEN"|awk '{print $2}'`  
            done
        echo "GEN pid is $GEN_pid"     
        echo "---------GEN 启动成功-----------"
        
         ## 启动system
        echo "--------开始启动SYSTEM---------------"
        nohup java -jar $SYSTEM &
        SYSTEM_pid=`lsof -i:$SYSTEM_port|grep "LISTEN"|awk '{print $2}'`
        until [ -n "$SYSTEM_pid" ]
            do
              SYSTEM_pid=`lsof -i:$SYSTEM_port|grep "LISTEN"|awk '{print $2}'`  
            done
        echo "SYSTEM pid is $SYSTEM_pid"     
        echo "---------SYSTEM 启动成功-----------"
        
         ## 启动job
        echo "--------开始启动JOB---------------"
        nohup java -jar $JOB &
        JOB_pid=`lsof -i:$JOB_port|grep "LISTEN"|awk '{print $2}'`
        until [ -n "$JOB_pid" ]
            do
              JOB_pid=`lsof -i:$JOB_port|grep "LISTEN"|awk '{print $2}'`  
            done
        echo "JOB pid is $JOB_pid"     
        echo "---------JOB 启动成功-----------"
        
        ## 启动op
        echo "--------开始启动OP---------------"
        nohup java -jar $OP &
        OP_pid=`lsof -i:$OP_port|grep "LISTEN"|awk '{print $2}'`
        until [ -n "$OP_pid" ]
            do
              OP_pid=`lsof -i:$OP_port|grep "LISTEN"|awk '{print $2}'`  
            done
        echo "OP pid is $OP_pid"     
        echo "---------OP 启动成功-----------"
        
        ## 启动mc
        echo "--------开始启动MC---------------"
        nohup java -jar $MC &
        MC_pid=`lsof -i:$MC_port|grep "LISTEN"|awk '{print $2}'`
        until [ -n "$MC_pid" ]
            do
              MC_pid=`lsof -i:$MC_port|grep "LISTEN"|awk '{print $2}'`  
            done
        echo "MC pid is $MC_pid"     
        echo "---------MC 启动成功-----------"
        
        echo "===startAll success==="
        ;;

 stop)
         P_ID=`ps -ef | grep -w $GATEWAY | grep -v "grep" | awk '{print $2}'`
        if [ "$P_ID" == "" ]; then
            echo "===GATEWAY process not exists or stop success"
        else
            kill -9 $P_ID
            echo "GATEWAY killed success"
        fi
         P_ID=`ps -ef | grep -w $AUTH | grep -v "grep" | awk '{print $2}'`
        if [ "$P_ID" == "" ]; then
            echo "===AUTH process not exists or stop success"
        else
            kill -9 $P_ID
            echo "AUTH killed success"
        fi
         P_ID=`ps -ef | grep -w $MONITOR | grep -v "grep" | awk '{print $2}'`
        if [ "$P_ID" == "" ]; then
            echo "===MONITOR process not exists or stop success"
        else
            kill -9 $P_ID
            echo "MONITOR killed success"
        fi
		 P_ID=`ps -ef | grep -w $GEN | grep -v "grep" | awk '{print $2}'`
        if [ "$P_ID" == "" ]; then
            echo "===GEN process not exists or stop success"
        else
            kill -9 $P_ID
            echo "GEN killed success"
        fi
		 P_ID=`ps -ef | grep -w $SYSTEM | grep -v "grep" | awk '{print $2}'`
        if [ "$P_ID" == "" ]; then
            echo "===SYSTEM process not exists or stop success"
        else
            kill -9 $P_ID
            echo "SYSTEM killed success"
        fi
		 P_ID=`ps -ef | grep -w $JOB | grep -v "grep" | awk '{print $2}'`
        if [ "$P_ID" == "" ]; then
            echo "===JOB process not exists or stop success"
        else
            kill -9 $P_ID
            echo "JOB killed success"
        fi
		 P_ID=`ps -ef | grep -w $MC | grep -v "grep" | awk '{print $2}'`
        if [ "$P_ID" == "" ]; then
            echo "===MC process not exists or stop success"
        else
            kill -9 $P_ID
            echo "MC killed success"
        fi
		 P_ID=`ps -ef | grep -w $OP | grep -v "grep" | awk '{print $2}'`
        if [ "$P_ID" == "" ]; then
            echo "===OP process not exists or stop success"
        else
            kill -9 $P_ID
            echo "OP killed success"
        fi
 
        echo "===stop success==="
        ;;   

restart)
        $0 stop
        sleep 2
        $0 start
        echo "===restart success==="
        ;;   
esac    
exit 0

二、运行测试

修改执行权限

chmod -x /home/projects/*
#启动
./java.sh start
#停止
./java.sh stop
#重启
./java.sh restart
  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值