我通常从特定的 Windows 服务器 (W1) 连接到远程 Linux 服务器。在 Windows 端,我使用putty
,在 Linux 端,我启动tmux
.
有时,我必须使用不同的 Windows 服务器 (W2) 并连接到相同的tmux
会话。
问题:如果我在 W1 上设置了窗口大小putty
,那么我在 W2 上就不能超过这个大小。当我最大化putty
窗口时,多余的空间无法使用,充满了~
字符。
有没有办法“强制”调整 W2 的大小,即使这意味着 W1 将仅显示部分输出?或者让 W1 与tmux
会话断开连接的方法?
答案1
使用tmux list-client
,您可以列出连接到 tmux 会话的所有客户端。例如:
$ tmux list-client
/dev/pts/6: 0 [25x80 xterm] (utf8)
/dev/pts/8: 0 [25x80 xterm] (utf8)
此时,您可以选择分离指定的客户端,或指定会话的所有客户端。假设我想分离连接到会话 0 的每个人:
$ tmux detach-client -s 0
然后,您可以附加会话,这样大小就是您的了。
实际上,所有这些都可以完成tmux attach -d
(该-d
选项强制所有其他客户端分离)。
答案2
无需分离其他会话。使用
<c-b>:resize-window -A
将窗口扩大到最大的连接会话。
resize-window
( )的其他有用参数resizew
包括:
-a
:调整为最小会话大小。-U
、-D
、-L
和-R
:分别向上、向下、向左或向右调整。后面可以跟一个数字,确定增长 (-D
和-R
) 或收缩 (-U
和)的程度-L
。-x <width>
和/或-y <height>
将宽度和高度设置为给定值。
答案3
如果您已经在 tmux 中,那么您可以使用 分离所有其他连接:detach-client -a
。它只会离开您当前的会话。因此,您不会有多余的空间无法使用,充满~
字符。
答案4
如果您使用xterm
,那么您可以tmux
通过以下方式手动调整 W2 上的窗口大小:
tmux
从 W1 和 W2 的会话中分离,resize
在 W2 上的终端中输入并运行它,- 返回到您的会话,窗口大小应该会调整。
(假设您没有启用自动调整窗口大小tmux
。)