一、创建脚本auto_reset_springboot.sh,tempurl:项目文件夹路径
!/bin/bash
ID=`ps -ef | grep java| grep -v "grep" | awk ‘{print $2}‘`
echo $ID
echo"---------------"
for id in$ID;dokill-9$id
echo"killed $id"done
source/etc/profile
nohup java-jar /tempurl/tempname.jar -server.port=9090 >/tempurl/nohup.out &echo"reset success"
以上脚本的解释:
1、获取所有Java进程的ID,赋值给变量ID
ID=`ps -ef | grep java| grep -v "grep" | awk ‘{print $2}‘`
2、循环杀死进程:
for id in$ID;dokill-9$id
echo"killed $id"done
3、加载环境变量
source /etc/profile
4、后台启动springboot项目,并将日志放入tempurl/nohup.out中
nohup java -jar /tempurl/tempname.jar -server.port=9090 >/tempurl/nohup.out &
二、安装dos2unix,转换文件类型
yum install dos2unix
dos2unix auto_reset_springboot.sh
三、执行文件,查看日志或查看pid的变化,项目是否已重新启动
如果不能执行,可能是文件权限没有执行权限,设置上执行权限就行了
./auto_reset_springboot.sh
四、设置定时执行文件
1、编辑定时任务:
crontab -e
2、设置定时执行cron表达式,每天凌晨一点执行:
0 1 * * * /tempurl/auto_reset_springboot.sh
3、重置定时器
service crond restart
原文:https://www.cnblogs.com/fuhui-study-footprint/p/12778978.html