shell指令碼自動拉起啟動程式

2021-09-07 09:17:02 字數 942 閱讀 4121

一、我們先看看編寫的shell指令碼的內容,該shell的作用主要是實現監控某個程式崩潰之後就自動重啟該程序。

while true  

do  

procnum=` ps -ef|grep "test"|grep -v grep|wc -l`  

if [ $procnum -eq 0 ]; then  

/home/test&  

fi  

sleep 30  

done  

-eq意思是等於0,用於判斷該test是否還在執行狀態。監控/home/test這個程式是否執行。

二、由於該程式是window上的編寫的,我們將它(名字用run._start.sh)拷貝到linux下之後需要對它賦予操作的許可權

chmod 777 run_start.sh

三、我們將啟動一下該程式

./run_start.sh &

記得加上&,要不然得視窗退了,該指令碼也退出了。

三、發現執行的時候有錯誤「-bash: ./run_start.sh: /bin/bash^m: bad interpreter: 沒有那個檔案或目錄」 ,根據提示,我以為沒有這個shell沒有安裝,所以找不到「/bin/bash」,其實理解錯誤了,是linux上無法識別window的doc格式。以後記住了,如果遇到這bad interpreter的錯誤,一定要將字元做一下轉換,方法如下:

1)編輯出錯檔案

vi run_start.sh

2)檢視該格式(報錯檔案格式是dos)

:set ff

3)修改格式

:set ff=unix

4)儲存退出

:wq!

四、再重新執行指令碼,可以看到正常了

五、設定開機自動啟動指令碼

使用命令 vi  /etc/rc.local 在檔案末尾新增這一行        /home/test.sh&

設定loadrunner自動啟動指令碼程式

設定loadrunner自動啟動指令碼程式 clsset m root c program files hp loadrunner bin m root wlrun.exe testpath c jituanv2.0 dianyingyanchu scenas scena1.lrs run wait...

shell啟動指令碼

由於客戶特殊需求,公升級軟體時自動修改sf,無需手動,給他們在啟動指令碼裡面新增了修改sf的指令。正好記下。f 2 2 sfdst ls usr s304 etc oversea 3if sfsrc sfdst then 4echo sfcfgname is not right 5 s sfcfgn...

shell指令碼程式

學習shell指令碼是需要經過大量的練習來鞏固語法的 就像我們當初學習c語言是一樣的 下面為自己在用shell編寫的指令碼程式。1.求1.100所有數的總和 程式如下 bin bash i 0sum 0 for i 100 i do let sum i done echo sum最終輸出結果為505...