很少用shell腳本,最近在寫1個shell腳本,遇到1些問題,居然被折騰了半天。這些毛病太低級了,不應當.趁現在有時間,將履行該shell的腳本的全部進程記錄下來,方便以后作為參考。
1、我們先看看編寫的shell腳本的內容,該shell的作用主要是實現監(jiān)控某個程序崩潰以后就自動重啟該進程。
-eq意思是等于0,用于判斷該test是不是還在運行狀態(tài)。監(jiān)控/home/test這個程序是不是運行。
2、由于該程序是window上的編寫的,我們將它(名字用run._start.sh)拷貝到linux下以后需要對它賦予操作的權限
chmod 777 run_start.sh
3、我們將啟動1下該程序
./run_start.sh &
記得加上&,要不然得窗口退了,該腳本也退出了。
3、發(fā)現運行的時候有毛病“-bash: ./run_start.sh: /bin/bash^M: bad interpreter: 沒有那個文件或目錄” ,根據提示,我以為沒有這個shell沒有安裝,所以找不到“/bin/bash”,其實理解毛病了,是linux上沒法辨認window的doc格式。以后記住了,如果遇到這bad interpreter的毛病,1定要將字符做1下轉換,方法以下:
1)編輯出錯文件
vi run_start.sh
2)查看該格式(報錯文件格式是DOS)
:set ff
3)修改格式
:set ff=unix
4)保存退出
:wq!
4、再重新運行腳本,可以看到正常了