Gnu-Screen

執行在其上的程序終止時的 GNU 螢幕行為

  • May 16, 2020

我正在閱讀 GNU Screen 手冊,上面寫著

當程序終止時,螢幕(預設情況下)會終止包含它的視窗。如果此視窗在前台,則顯示切換到先前顯示的視窗;如果沒有,螢幕退出

然而在實踐中似乎並非如此。既不是螢幕也不是窗戶。例如,如果我啟動螢幕並執行程序who或任何其他程序,程序會執行並終止,但螢幕或視窗仍然存在。我讀錯了什麼?

如果你開始screen,然後who在提示符下鍵入,那麼它就是*執行在screen*其中的 shell來執行whoscreen因此,在該 shell 終止之前不會終止。

screen執行who而不是你的shell,呼叫screen

screen who

可以觀察到相同的行為tmux

tmux new-session who

…其中new-session(或new簡稱)是一個tmux啟動新tmux會話的命令,它以在該會話中執行的 shell 命令作為參數。

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