Gnu-Screen

無法啟動螢幕會話

  • May 25, 2017

我通過 bash 呼叫以下命令,但它根本沒有創建螢幕會話:

screen -d -m time python3 myscript.py ; sleep 1

當我這樣做時,screen -r它說沒有螢幕可以恢復。但是,當我嘗試:

screen -d -m time python3; sleep 1

然後在這樣做screen -r時會顯示 Py 控制台。

我在做什麼錯?

screen -d -m time python3 myscript.py``python3 myscript.py在螢幕會話中執行,然後退出。如果您稍後沒有看到該螢幕會話,那是因為腳本已經退出。

看來你希望myscript.py跑得更久。一定是出了什麼問題。將輸出(尤其是錯誤)重定向到文件以查看發生了什麼。或者通過執行另一個程序來保持會話。

screen -d -m time sh -c 'python3 myscript.py; echo $?; sleep 999999999'

如果腳本在您直接從螢幕執行時不起作用,但如果您從互動式 shell 執行它則起作用,那麼這很可能表明兩件事:

  • myscript.py依賴於某些設置,可能是環境變數。它不是獨立的。
  • 您將此設置設置在錯誤的位置。您可能在 中設置了一個環境變數.bashrc,該變數只能由互動式 shell 讀取。.profile改為設置環境變數;登錄時會讀取此文件。

引用自:https://unix.stackexchange.com/questions/366998