当前位置:主页 > 脚本语言 > Shell >

shell脚本实现监控某个进程意外停止后拉起进程

时间:2021-05-16 09:38:41 | 栏目:Shell | 点击:

要监护的进程启动脚本:实现脚本写入crontab定时任务

#!/usr/bin/env bash
# scheduled task at 22:00 everyday
script_path=`eval pwd`
user_name=`whoami`
echo "crontab_script_path:${script_path}"
sudo echo "* * * * * cd ${script_path} && sh xxx.sh > start_cron.log " >> /var/spool/cron/${user_name}

守护进程脚本:

#!/usr/bin/env bash
jd=`ps -ef | grep xxx | grep -v grep | awk -F" " '{print $2}'`
dt=`date "+%Y-%m-%d %H:%M:%S"`
arr=($jd)
len=${#arr[@]}
if [ "$len" -lt 4 ]
then
  echo "xxx process's num less than 4, kill it all (time: $dt)" >> xxx.logs
  sh stop.sh
  jd=""
  sleep 10s
fi
if [ "$jd" = "" ]
then
  echo "xxx exe is restarting (time: $dt)" >> xxx.logs
  source ~/.bash_profile
  sh start.sh
fi

总结

您可能感兴趣的文章:

相关文章