您好,登錄后才能下訂單哦!
Shell中怎么判斷進程是否存在,針對這個問題,這篇文章詳細介紹了相對應的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。
簡潔版:
#! /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 $count sec=7 #開始一個循環,以判斷進程是否關閉 for var in 1 2 do 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 fi done #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 &
關于Shell中怎么判斷進程是否存在問題的解答就分享到這里了,希望以上內容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注億速云行業資訊頻道了解更多相關知識。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。