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

Victoria ·
更新时间:2024-11-15
· 508 次阅读

要监护的进程启动脚本:实现脚本写入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

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对软件开发网的支持。如果你想了解更多相关内容请查看下面相关链接

您可能感兴趣的文章:Shell中exit和return的区别讲解在Shell脚本中调用另一个脚本的三种方式讲解使用shell脚本来给mysql加索引的方法干掉一堆mysql数据库,仅需这样一个shell脚本(推荐)linux shell之通过标识测试文件系统属性的方法示例linux shell中if的各种判断linux shell之pushd、popd和dirs的使用讲解linux shell之控制台打印各种颜色字体和背景的实现方法使用shell脚本每天对MySQL多个数据库自动备份的讲解使用shell来发tcp包的方法



监控 进程 shell脚本 shell

需要 登录 后方可回复, 如果你还没有账号请 注册新账号