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

Ser*_*ult 7 linux shell tmux

每隔一段时间,我就会不小心将一些控制代码注入到我的终端会话中(要么是错误的编码,要么是意外的gpg --export)。这有时会导致我的 tmux 会话丢失其格式并将控制字符打印到 tmux 窗口的边框中。之后所有 tmux 窗口都变得非常混乱。即使只是聚焦一个窗口也会弄乱其他窗口。终端的传统重置技巧(resetecho [CTRL]+V [CTRL]+C)无法修复它,因此我最终注销了所有活动会话并必须重新启动 tmux。

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

Mic*_*ton 6

Ctrl+B然后r应该这样做。这会导致 tmux 从头开始​​重绘整个屏幕。


小智 5

3 个选项...

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


sim*_*ohe 4

有一个详细的说明如何在堆栈交换中重置 tmux 的许多部分:https://unix.stackexchange.com/questions/49886/tmux-status-bar-corrupted-after-catting-a-binary-file-how-重置

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