一、創建腳本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; do kill -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; do kill -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
