Gnu-Screen

在byobu / screen中分離時退出複制/回滾模式

  • March 11, 2015

我發現,如果我在 byobu 螢幕中進入“複製模式”或“回滾模式”,將其分離並讓它繼續執行,緩衝區將填滿並最終阻止我在螢幕中執行的程序。(大概是因為程序被阻止寫入標準輸出,因為沒有人消耗字節。)

這種行為有點破壞性。例如是否有可能

  1. 脫離螢幕時自動退出複制/回滾模式,

或者 2. 一旦緩衝區已滿,讓處於複製/回滾模式的視圖的位置向前移動,以允許程序繼續執行

很高興聽到對此的任何建議。

您的評估是正確的,在回滾模式視窗中執行的程序正在停止,因為它的輸出緩衝區已滿並且它被掛起等待寫入。這種行為既正確又可取;使用者進入回滾模式以查看螢幕內容,但正如您所注意到的,當會話分離時,這既不方便也不明顯。

不幸的是,它似乎是 gnu-screen 和 tmux 中缺少的功能。byobu 無法在包裝器中修復它,因為它無法檢測給定視窗的回滾狀態,也無法使用外部命令將視窗中斷,儘管它可以像使用者一樣向終端發送命令會,它是否能夠檢測或記住回滾狀態。screen 和 tmux 似乎都沒有在終端分離時啟用自動從回滾模式恢復的功能。需要一個更新檔。

引用自:https://serverfault.com/questions/542477