1
所以我寫這個劇本叫py_script.py,我跑了SSH會話學校的機器上:如果我運行以下腳本,我的ssh會話是否不會終止?
import time
import os
while True:
os.system("echo still_alive")
time.sleep(60)
...這樣做:
bash $ python py_script.py &
。
這是爲了防止可怕的broken pipe
消息發生?
問題是,經過一段時間不活動,當我通過SSH連接時,我的連接將被丟棄。爲了防止這種情況發生,我編寫了上面的腳本,它會自動將消息寫入控制檯以計算「操作」,以便我不必每5分鐘按一次輸入。 (我在一臺機器上閒置,需要運行一段時間。)
是的,這將起作用......雖然你可以使用一個單線程的shell腳本,比如'while true;活着回聲;睡60; done'。這可能不是你想要做的。 (你真的想在你的有用程序的輸出中間在你的控制檯中隨機吐出「still_alive」嗎?) – abarnert 2014-09-06 01:04:29
我明白你在說什麼了。但是,下面的解決方案在過去並不適合我,所以我想我會做這樣的事情。從本質上講,我想知道的是,如果在後臺運行程序(例如「cd。」)做任何事情都會使會話保持活躍狀態。 – user3806744 2014-09-06 20:11:06
這取決於爲什麼會話正在關閉......我不能保證你在做什麼(通過線路觸發會話的輸出)會保持活動狀態,但在後臺運行程序甚至不會那樣做的可能性就更小了。 – abarnert 2014-09-08 01:00:30