shell脚本 SpringBoot项目启动脚本

#!/bin/bash

#这里可替换为自己的执行程序

APP_NAME=project-admin.jar

#使用说明,用来提示输入参数

usage(){

echo "Usage: sh catalina.sh [start|stop|restart|status]"

exit 1

}

#检查程序是否在运行

is_exist(){

   pid=`ps -ef|grep $APP_NAME|grep -v grep|awk '{print $2}' `

   #如果不存在返回1,存在返回0

   if [ -z "${pid}" ];then

     return 1

   else

     return 0

   fi

}

 

#启动方法

start(){

is_exist

if [ $? -eq "0" ];then

  echo "${APP_NAME} is already running. pid=${pid} ."

else

  BUILD_ID=dontkillMe

   nohup java -jar $APP_NAME > ./catalina.log &

 echo "${APP_NAME} is running..."

fi

}

 

#停止方法

stop(){

is_exist

if [ $? -eq "0" ];then

 kill -9 ${pid}

else

 echo "${APP_NAME} is not running."

fi

}

 

#重启,调用停止和启动方法即可

restart(){

stop

start

}

 

#输出运行状态

status(){

is_exist

if [ $? -eq "0" ];then

  echo "${APP_NAME} is running. pid is ${pid}"

else

    echo "${APP_NAME} is not running."

fi

}

 

#根据输入参数,选择执行对应方法,不输入则执行使用说明

case $1 in

  start)

     start

    ;;

   stop)

     stop

     ;;

   restart)

     restart

      ;;

    status)

      status

;;

    *)

     usage

      ;;

     esac

 

############## 注 以上是内容,不可少任何代码  结束################

说明:

*APP_NAME=project-admin.jar 这个是项目名称,将右侧的jar改成自己的项目jar。

 *nohup java -jar $APP_NAME > ./catalina.log & 这是输出日志到catalina.log文件,日志根据自己需求定义; 最后&代表后台运行,不可少。

 *pid=`ps -ef|grep $APP_NAME|grep -v grep|awk '{print $2}' `即获取pid;字段的引用  $ 字段操作符;  $1代表第一列,$2代表第二列。。。n以此类推;  $0代表整个输入记录;

转载于:https://my.oschina.net/u/1417666/blog/1841300

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值