openWRT BASH 腳本查詢進程是否運行,以及未運行時重啓

系統: openWRT v15, CHAOS CALMER

腳本: BASH


步驟:

1. 更新數據源及安裝 BASH;

#opkg update
#opkg install bash

2. 腳本文件, check_process.sh

#!/bin/bash

while [ 1 ]
do
        flag=$(ps | grep check_process | grep -v "grep" | wc -l)
        if [ $flag = "1" ]
        then
                echo "check_process RUNNING!"
        else
                echo "check_process has stopped."
                #check_process start up
        fi

        sleep 5
done

 注意事項: 進程名 check_process 的唯一性,否則 if 比較 "1" 不正確

4. 把腳本設爲開機啓動;

4.1 新建啓動文件:
    #vi /etc/init.d/usart_1_run_monitor
 
4.2 文件內容:
#!/bin/sh /etc/rc.common
#/etc/init.d/usart_1_run_monitor
START=82
start() {
    #指定目錄下的 bash 腳本,check_process.sh
}
 
stop(){
    killall usart_1_run_monitor
}
 
4.3 修改文件屬性:
    #chmod 777 /etc/init.d/usart_1_run_monitor
 
4.4 啓用開機啓動服務
    #/etc/init.d/usart_1_run_monitor enable

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章