2014-11-04 166 views
1

我正在使用shell腳本調用二進制文件。二進制文件基本上建立一個套接字客戶端服務器。這個二進制文件最初工作正常,但是在60mint之後它正在停止。我需要檢查它是否沒有運行,然後再次啓動它。這裏是我的代碼:如何檢查進程是否正在運行 - Linux

sleep 3 
busyboxValue=busybox 
commandpid=`$busyboxValue pidof command` 
echo ${commandpid} > /sdcard/CommandProcess.txt 
if [ $commandpid -gt 0 ] 
then 
    echo -16 > /proc/$commandpid/oom_adj 
    echo -1000 > /proc/$commandpid/oom_score_adj 
fi 
while [ true ] 
do 
    commandpid=`$busyboxValue pidof command` 
    if [ $commandpid -gt 0 ] 
    then 
     echo "command binary still running" 
    else 
     echo "command binary Exited so restarting it" 
     /data/local/command 1200 & 
     commandpid=`$busyboxValue pidof command` 
     echo ${commandpid} > /sdcard/CommandProcess.txt 
     echo -16 > /proc/$commandpid/oom_adj 
     echo -1000 > /proc/$commandpid/oom_score_adj 
    fi 
    sleep 10 
done 
+0

這裏有問題嗎?你在尋找http://codereview.stackexchange.com/嗎? – 2014-11-04 16:51:54

+0

他問如何創建一個看門狗開始他的事情,並重新啓動它,如果它死了 – ErlVolton 2014-11-04 16:55:42

+0

'它正在越來越停止'你的意思是它收到一個SIGSTOP並進入「停止」狀態? ...還是停滯了? ...還是終止了? – amphetamachine 2014-11-04 17:01:51

回答

相關問題