簡潔版:
#! /bin/bash# author caoxin# time 2012-10-10 # program : 判斷進行是否存在,並重新啟動function check(){ count=`ps -ef |grep $1 |grep -v "grep" |wc -l` #echo $count if [ 0 == $count ];then nohup python /runscript/working/$1 & fi}check behaviors.py
詳細版:
#!/bin/bash##調用關閉jboss進程指令碼stopMethodServer.sh#列印出當前的jboss進程:grep jboss查詢的jboss進程,grep -v "grep" 去掉grep進程jmsThread=`ps -ef | grep gdms | grep jboss | grep -v "grep"`echo $jmsThread#查詢jboss進程個數:wc -l 返回行數count=`ps -ef | grep gdms | grep jboss | grep -v "grep" | wc -l`echo $countsec=7#開始一個迴圈,以判斷進程是否關閉for var in 1 2do if [ $count -gt 0 ]; then #若進程還未關閉,則指令碼sleep幾秒 echo sleep $sec second the $var time, the JMS thread is still alive sleep $sec else #若進程已經關閉,則跳出迴圈 echo "break" break fidone#if [ $count -eq 0 ]; then# echo "nohup startMethodServer.sh &"# nohup startMethodServer.sh &#else# echo "It's better to check the thread!!!"#fi#調用啟動指令碼nohup startMethodServer.sh &