关于shell:简易的自动重启jar包的shell脚本

35次阅读

共计 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

正文完
 0