使用shell腳本自動監控後臺進程,並能自動重啓

先建一個shell腳本proxy.sh:java

#!/bin/sh
while :
do
  javapro=$(ps -ef |grep "D8888" |grep -v "grep")
  if [ ! "$javapro" ] ; then
        # do something
        # echo "down, restart it."
        ~/proxy_expect
  fi
  sleep 300

done

腳本是一個死循環,每隔5分鐘會從新檢測一下java的進程,若是找不到,就使用命令重啓,或調用其餘腳本重啓。shell

如我這裏因爲要使用ssh來啓動一個代理,因此寫了一個expect交互腳本:ssh

#!/usr/bin/expect
set password "password"
spawn ssh -2 -Nf -g -D8888 
expect "password:" {send "$password\r"}

expect eof

最後再啓動shell腳本:sh proxy.sh &spa

相關文章
相關標籤/搜索