shell指令碼中執行重啟完成後繼續執行其它的命令

2022-02-20 11:01:00 字數 2712 閱讀 4704

1樓:綠衣人敲門

要用迴圈查詢直到重啟完成.

fi追問

謝謝你的回答,有解決問題的思路了,但違背了原程式的意圖。原程式意圖為:1、當服務狀態失常時在「/var/log/htmon.

log」檔案中記入日誌;2、自動將狀態失常的httpd服務重新啟動;3、若重啟httpd服務失敗,則嘗試重新啟動伺服器主機

但您改的程式是httpd啟動成功($?為0)就跳出迴圈,再修改啟動級別、重啟作業系統(httpd啟動成功就不需要這樣做了),再則由於httpd配置錯誤啟動不成功,則永遠迴圈下去。還得請教有何辦法?

回答之前沒理解你要做什麼。

要防止無限迴圈,可以對嘗試次數做個限制(加個計數器),比如10次嘗試後還不成功就嘗試修改啟動級別並重啟作業系統。

count=0

flag=0 #標誌是否成功, 0-失敗,1-成功

while [ $count -lt 10 ] #只嘗試10次

啟動不成功

2樓:

重啟後還有繼續執行,只有在啟動指令碼里寫了。

linux 的 shell指令碼程式設計中,如何確保一條指令指令執行成功了之後再進行下一條指令

3樓:匿名使用者

通常可以根據返回值來判斷。

不過還有一點就是要注意,就是make install要管理員許可權才行。

make clean && make && make install就可以了。

你試試吧。

4樓:匿名使用者

可以用重定向輸出make > make.txt

make install > make install.txt

利用shell指令碼執行ssh遠端另一臺主機執行命令並返回命令的結果集

linux中怎樣讓shell指令碼等待其他指令碼檔案執行完??

5樓:匿名使用者

在shell裡寫一個條件判斷語句,去查詢上一條命令執行的結果,如果執行成功則執行下面的語句。

如是上面的命令是一個簡單的命令,就用sleep來控制。這都是常用方法

6樓:

你能估計呼叫其他指令碼檔案的時間麼?如果可以,那就用sleep 來控制,等待多少秒之後,再繼續執行下面的指令碼。

例如:sleep 30

即等待30秒,再繼續。

如能解決你的問題,請採納,如有問題,請私信,謝謝!

7樓:匿名使用者

wait 不可以嗎?

8樓:上善之水

在其他的指令碼呼叫的地方加上一個 「;」,然後再寫shell的命令

在shell程式設計中怎樣確保上一個命令(服務重啟)成功後,才執行下一個命令?

9樓:

要用迴圈查詢直到重啟完成.

如何shell指令碼中,執行一個其他程式的命令,然後儲存這個執行這個命令的結果和過程? 20

10樓:小米飛貓

sh -x abc_stop | tee abc.log

sh -x 除錯指令碼執行過程

tee abc.log 讀取標準輸入的資料,並將其內容輸出成abc.log檔案

如何利用 shell 在進入一種模式後,繼續呼叫該模式下的命令

編寫shell指令碼完成下面的功能指令碼執行後讀

bin bash no.1 read p 請輸入一個檔名 filenameif f filename thenrm rf filename dev null 2 1echo filename 刪除完畢 else echo filename 不是一個普通檔案 fi bin bash no.2 read...

如何在頁面載入完成後執行js指令碼

把指令碼放body的最後。如果放前面,你用jquery的話,把指令碼放這個方法體裡面可以讓頁面載入完執行 function 如何讓頁面載入以後自動執行該js的函式 如果來有函式源 function dosomething 不用jquery的情bai況下du可以 zhidao window.onloa...

linux下shell指令碼執行過程中重新輸入命令

使用一個小的shell b呼叫a即可。想做個linux下的指令碼中,在原先的命令中需要在輸入命令後手動輸入一個yes後才能執行 我想批量執行命令 把指令碼里的yes判斷去掉就是了。如果不想改,也很簡單 bin bash for i in cat yes id idone linux shell指令碼...