分享一个Spring Boot Jar包启动停止脚本

  • A+
所属分类:JAVA


共计 1711 个字符,预计需要花费 5 分钟才能阅读完成。

我们都知道Jar启动命令java -jar jar包,但是窗口关闭,项目就不能访问了;
如果需要后台运行就要用nohup java -jar jar包 &,这样程序就会在后台启动,并且不会收到命令窗口关闭的影响;
但是这样每次都输命令,也还是不方便,下面脚本可以帮助你只需简单输入start、stop、status可以部署,停止,状态;

脚本内容:

#!/bin/bash
#这里可替换为你自己的执行程序,其他代码无需更改
APP1_NAME=jar1包路径
APP2_NAME=jar2包路径

#使用说明,用来提示输入参数
usage() {
    echo "Usage: sh demo.sh [start|stop|restart|status]"
    exit 1
}

#检查程序是否在运行
is_exist_admin() { 
    pid=`ps -ef | grep $APP1_NAME | grep -v grep | awk '{print $2}' `
    #如果不存在返回1,存在返回0
    if [ -z "${pid}" ]; then
      return 1
    else
      return 0
    fi
}
is_exist_web() { 
    pid=`ps -ef | grep $APP2_NAME | grep -v grep | awk '{print $2}' `
    #如果不存在返回1,存在返回0
    if [ -z "${pid}" ]; then
      return 1
    else
      return 0
    fi
}

#启动方法
start() {
   is_exist_admin
   if [ $? -eq "0" ]; then
    # java -jar ${APP1_NAME}
     echo "${APP1_NAME} is already running. pid=${pid} ."
   else
     nohup java -jar $APP1_NAME > /dev/null 2>&1 &
   fi

   is_exist_web
   if [ $? -eq "0" ]; then
    # java -jar ${APP2_NAME}
     echo "${APP2_NAME} is already running. pid=${pid} ."
   else
     nohup java -jar $APP2_NAME > /dev/null 2>&1 &
   fi
}

#停止方法
stop() {
   is_exist_admin
   if [ $? -eq "0" ]; then
     kill -9 $pid
   else
     echo "${APP1_NAME} is not running"
   fi

   is_exist_web
   if [ $? -eq "0" ]; then
     kill -9 $pid
   else
     echo "${APP2_NAME} is not running"
   fi
}

#输出运行状态
status() {
   is_exist_admin
   if [ $? -eq "0" ]; then
     echo "${APP1_NAME} is running. Pid is ${pid}"
   else
     echo "${APP1_NAME} is not running."
   fi

   is_exist_web
   if [ $? -eq "0" ]; then
     echo "${APP2_NAME} is running. Pid is ${pid}"
   else
     echo "${APP2_NAME} is not running."
   fi
}

#重启
restart() {
   stop
   start
}

#根据输入参数,选择执行对应方法,不输入则执行使用说明
case "$1" in
   "start")
     start
     ;;
   "stop")
     stop
     ;;
   "status")
     status
     ;;
   "restart")
     restart
     ;;
   *)
     usage
     ;;
esac

添加快捷命令

# root目录
cd /root
vim .bashrc
# 添加以下配置后保存退出
alias start='cd 脚本所在目录; sh myBlogService start'
alias status='cd 脚本所在目录; sh myBlogService status'
alias stop='cd 脚本所在目录; sh myBlogService stop'
alias restart='cd 脚本所在目录; sh myBlogService restart'
# 刷新生效
source .bashrc

使用快捷命令

接下就可以通过简单的start、stop、status、restart,让你的项目部署更加便利;
start 启动
stop 停止
restart 重启
status 程序状态

  • 我的微信
  • 这是我的微信扫一扫
  • weinxin
  • 我的微信公众号
  • 我的微信公众号扫一扫
  • weinxin

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: