SpringBoot编写sh脚本进行启停

SpringBoot项目可以使用内嵌tomcat的jar包启动方式也可以选择war包配置等等进行外置tomcat部署启动

我这里记录一下内嵌tomcat的jar包启动方式及shell脚本

maven  clean  package 打jar包

本地Java -jar xxx.jar启动测试,如果提示没有主方法入口等问题,建议百度进行解决

将jar包上传到linux服务器

确保Liunx环境又jdk运行环境,java -version,没有百度进行安装配置

shell脚本中也可以进行export jdk环境,需要有jdk包

shell脚本如下: demo.sh

#!/bin/sh
#定义程序名 及jar包的名
PROJECT_NAME=demo.jar
## 编写判断程序是否正在运行的方法
isExist(){
	## 首先查找进程号
    pid=$(ps -ef | grep ${PROJECT_NAME} | grep -v "grep" | awk '{print $2}')
	echo $(pid)
    ## 如果进程号不存在,则返回0 否则返回1
    if [ -z "${pid}" ]; then
    	return 0
    else
    	return 1
    fi
}
## 编写启动程序方法
start(){
	## 调用 判断程序是否正在运行的方法
    isExist
    ## 判断方法返回值是否等于0 ,等于则不存在
    if [ $? -eq "0" ]; then
    	echo "${PROJECT_NAME} is starting ......"
    	nohup java -Xms1024m -Xmx2048m -jar ${PROJECT_NAME} > ./log/startup.log &
    	echo "${PROJECT_NAME} startup success"
    else
    	echo "${PROJECT_NAME} is running, pid=${pid} "
    fi
}
## 编写停止程序的方法
stop(){
    ## 调用 判断程序是否正在运行
    isExist
    ## 判断是否存在,返回值0不存在
    if [ $? -eq "0" ]; then
    	echo "${PROJECT_NAME} is not running ......"
    else
    	echo "${PROJECT_NAME} is running, pid=${pid}, prepare kill it "
    	kill -9 ${pid}
    	echo "${PROJECT_NAME} has been successfully killed ......"
    fi
}
## 编写重启方法
restart(){
    ## 先停止再启动
    stop
    start
}


## 程序最开始执行的
## 根据用户输入,判断执行方法
case "$1" in
	"start")
		start
		;;
	"stop")
		stop
		;;
	"restart")
		restart
		;;
	*)
		echo "please enter the correct commands: "
		echo "such as : sh startup.sh [ start | stop | restart ]"
		;;
esac

启动停止脚本如下:

sh  demo.sh start

sh demo.sh stop 

sh demo.sh restart 

window直接copysh脚本到liunx环境运行会出现windows换行符无法识别问题

nodepad++处理一下再上传,建议百度

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值