寫了一個可執行任務的python腳本,該腳本可能會運行幾個小時。由於它與遠程服務器通信,如果發生連接錯誤,腳本可能會失敗。我想要做的是保持重新啓動它,如果它的退出代碼不是0。bash可能嗎?bash - 如何保持啓動程序,直到它退出0
一些僞-C,如果我的措辭是不明確的:
int exitcode;
do
{
exitcode = MyPythonScript();
} while (exitcode != 0);
寫了一個可執行任務的python腳本,該腳本可能會運行幾個小時。由於它與遠程服務器通信,如果發生連接錯誤,腳本可能會失敗。我想要做的是保持重新啓動它,如果它的退出代碼不是0。bash可能嗎?bash - 如何保持啓動程序,直到它退出0
一些僞-C,如果我的措辭是不明確的:
int exitcode;
do
{
exitcode = MyPythonScript();
} while (exitcode != 0);
而不是從bash重新啓動程序,你應該捕獲python程序中的連接錯誤,並在這種情況下重新連接。 – hek2mgl
@ hek2mgl,我絕對同意這將是一個更好的解決方案。然而,網絡資源的代碼不是我的,我只是從一個lib調用一個函數。這讓我不確定我是否可以在不修改lib本身的情況下對連接錯誤進行任何操作。 –