一个简单的需求:shell实现进程监控watchdog功能,配合计划任务每分钟执行一次shell脚本,对进程进行监控,如果意外中断那么启动他,如果正常则什么都不需要去做。
#!/bin/bash
NAME=java
NOP=/bin/true
DATE=$(/bin/date +”%Y-%m-%d %H:%M:%S”)
ps -ef | awk -F ” ” ‘{print $8,$2}’ | grep ^java >/dev/null 2>&1
case “$?” in
0)
# It is running in this case so we do nothing.
echo “$NAME is RUNNING OK. Relax.”
$NOP
;;
1)
echo “$NAME is NOT RUNNING. Starting $NAME and sending notices.”
java -jar sms.jar 2>&1 >/dev/null &
NOTICE=/tmp/watchdog.log
echo “$NAME was not running and was started on $DATE” >> $NOTICE
esac
exit 0
更多学习:http://www.demopu.com/?p=247
时间: 2024-12-10 03:54:48