題 使用tmux殺死程序後不再顯示文本


我正在運行一個Minecraft服務器,每當我“sh rtoolkit.sh”啟動服務器時,一切正常但是一旦我停止服務器並返回命令行準備輸入命令,我輸入的文本不會顯示並且光標保持在相同的位置,但如果我輸入命令並按回車鍵,我會看到結果。例如 ls 我在打字時沒有出現,但在點擊後我看到了輸出。我試過了 clear,但仍然是同樣的問題。

我發現解決問題的唯一方法是終止當前的tmux窗口並重新創建它。

我正在從Mint通過SSH完成所有這些工作。


4
2018-01-13 17:05


起源




答案:


您的描述表明停止服務器後tty處於非回顯模式。
當“交互式”程序意外退出並且沒有機會恢復它在啟動時調整的各種tty模式時,通常會發生這種情況。如果在正常退出程序時經常發生,則程序中存在錯誤。

您可以使用如下命令重現效果:

stty -echo ; printf 'Type something (there will be no echo); Enter/Control-C to resume...' ; read ; echo

您應該能夠使用此命令(鍵入“盲目”;因為沒有迴聲)來恢復正常的tty功能:

stty sane

14
2018-01-14 04:51



謝謝-stty sane 修復問題,我想有一個錯誤,因為正確停止它(不使用^ C)仍然會導致同樣的問題。
當我將CTRL + Z轉換為後台VIM時,這種情況發生在我身上,再次確認這是有效的。 - Louis Hong