以「秒」粒度自動監控指定進程

 crontab計劃任務定義時間的格式是「分、時、日、月、周」,粒度最小也是「分」,若是想以秒做爲粒度,咱們能夠用shell腳原本實現,這裏介紹一個能以秒粒度運行,監控java程序,一旦java程序意外中止,腳本會自動去啓動java。java

腳本內容以下:shell

[root@slave scripts]# vim monitor.sh 
#!/bin/sh
#Program: monitor java process.
#Author: zhaochj
#Date: 2015-05-14
#Version 1.0
#
. /etc/init.d/functions
while true;do
    JAVAPID=`pgrep java`
    PROGRAM=/usr/local/tomcat/bin/catalina.sh
    if [ -z "$JAVAPID" ];then
        $PROGRAM start 1>/dev/null
    fi
sleep 5
done

此腳本採用一個「while true;do  done」的死循環,來執行循環體中的命令,再以「sleep 5」來控制循環的時間間隔爲5秒,此腳本以「sh monitor.sh &」方式在後臺運行便可。vim

相關文章
相關標籤/搜索