如何修复被控制字符搞乱的 tmux 会话

如何修复被控制字符搞乱的 tmux 会话

偶尔,我会不小心将一些控制代码输入到我的终端会话中(无论是错误的编码还是意外的gpg --export)。这有时会导致我的 tmux 会话丢失其格式并将控制字符打印到 tmux 窗口的边框中。之后,所有 tmux 窗口都会变得非常混乱。即使只是聚焦一个窗口也会弄乱其他窗口。传统的终端重置技巧(resetecho [CTRL]+V [CTRL]+C)无法解决这个问题,所以我最终退出所有活动会话并不得不重新启动 tmux。

有人知道在不终止 tmux 的情况下重置/刷新所有 tmux 窗格的方法吗?

答案1

在 stack exchange 中有关于如何重置 tmux 许多部分的详细解释:https://unix.stackexchange.com/questions/49886/tmux-status-bar-corrupted-after-catting-a-binary-file-how-to-reset

对我来说,通常只需要tmux rename-window myWindowName和(设置状态正确)。printf '\033]2;%s\007' "$(uname -n)

答案2

Ctrl+B然后r就可以了。这会导致 tmux 从头开始​​重新绘制整个屏幕。

答案3

3 个选项...

  1. stty sane
  2. reset
  3. echo ^v^o (这是 E

答案4

ctrl-b r 不是正确答案。正确答案是:

  1. ctrl-b shift-D获取附加会话的列表
  2. 选择您在弄乱屏幕时使用的会话,然后按 Enter 将其分离(或者,如果您愿意,可以遍历此列表并从所有会话中分离)
  3. 如果在 #2 中与所有会话分离,则tmux attach -t再次附加一个全新的会话。这将摆脱有问题的会话,而无需终止 tmux。

相关内容