共计 639 个字符,预计需要花费 2 分钟才能阅读完成。
#!/bin/bash
ID=`ps -ef |grep 包名.jar | grep -v 'grep' | awk '{print $2}'` ## 查找正在执行的指定包名过程 id
echo $ID ## 打印正在执行的过程 id
echo "--------------"
kill -9 $ID ## 杀死过程的指令
echo "killed $ID" ## 打印杀死过程的 id
sleep 2
echo "restart begin" ## 打印开始重启提醒语句
source /etc/profile
nohup java -jar 包名.jar > /usr/local/path/nohup.out & ## 启动 jar 包指令
processID=`ps -ef |grep 包名.jar | grep -v 'grep' | awk '{print $2}'` ## 获取重启后的过程 id
echo "restart success $processID" ## 打印重启后的过程 id
给 shell 脚本赋权限
chmod +x autoRestart.sh #文件变为可执行文件,能够看到文件名变色
chmod -R 777 文件名 赋权限
在 linux 上设置一个定时工作 执行这个脚本即可
// 编辑定时工作
crontab -e
30 6 * * * /usr/local/path/autoRestart.sh
*/2 * * * * /usr/local/path/autoRestart.sh
// 查看定时器列表
crontab -l
// 刷新定时器配置
/sbin/service crond reload
// 定时器日志
tail -f /var/log/cron
正文完