通过本地tmux会话在ssh上使用tmux命令

  • 本文关键字:tmux 命令 ssh 会话 ssh tmux
  • 更新时间 :
  • 英文 :


我有一个本地tmux会话,我可以正确地做所有事情。现在我ssh到一台远程机器,并在那里生成一个tmux会话。在远程会话中,我想使用所有功能,如打开新窗口,重命名窗口,浏览会话窗口树等。问题是,每当我使用任何这样的命令时,它都应用于本地会话而不是远程会话!例如,ctrl+b+,更改远程上的窗口名称,试图重命名我通过ssh-ed的当前本地tmux窗口。即使我在远程bash中有一个闪烁的光标也是如此。如何告诉tmux命令将在远程机器上执行,而不是在本地机器上执行?

您必须在.tmux.conf中设置以下部分:

bind-key b send-prefix

现在您可以按ctrl-b + b + ,更改内部会话窗口名称。由于默认情况下所有命令都进入最外层的会话,因此您必须使用bind-key来访问内部会话。

ctrl-b + b + ,  # changes name of inner session (remote)
ctrl-b + ,      # changes name of outer session (local)

我假设ctrl-b是您的默认前缀键。我说的ctrl-b是指ctrl + b
ctrl-b + b + ,意味着您必须按ctrl,按b两次,然后按,

您可以进一步使用bind-key <key> send-keys <key1 key2>绑定一个密钥来发送多个密钥并访问远程实例中的窗口。你可以参考这个答案或这个答案来获得更多信息。

最新更新