寫一個Shell腳本檢測某個進程是否在運行
1 #!/bin/sh 2 3 CMD=pgrep 4 #進程名 5 PPROC=test 6 #循環,為了讓腳本一直運行監控 7 while : 8 do 9 if [ -n "`$CMD $PPROC`" ] 10 then echo "test is ok" 11 else 12 echo "test is killed" 13 fi 14 # 每次監測時間60秒 15 sleep 60 16 done
這樣就起到了一個守護進程的作用,一旦發現某個進程不運行了,就可以重啟啟動。