2015-05-25 49 views
0

嗨,我现在正在使用tmux和一些困扰我现在。tmux打开一个新窗口,但不是原来的一样

我记得Ctrl + B C将打开一个新的窗口,该窗口将保持原有窗口的状态,这意味着如果我ssh登录到远程服务器,然后我打电话Ctrl + B C,和新的窗口也将SSH登录到远程服务器,导致它们就像在同一个会话中或什么。

但现在它现在以这种方式工作,新窗口在我自己的主机中,并且已经与$ HOME一起打开,就像在iTerm中打开一个新选项卡一样,为什么?

回答

2

这是从documantation

如果未指定壳命令,则使用默认的命令选项的值

基本上你需要TMUX, 的预期违约行为绑定一个密钥并设置一个命令在启动一个新窗口时运行 然而,由于tmux正在主机上运行,​​它不会知道您打开的窗口中正在运行的是什么。

+0

我曾经在工作中使用tmux(不是很久),我记得我每天只需要ssh一次,然后我将所有的窗口都通过ssh连接。 –

+1

我明白这个问题,但它不是默认行为,我怀疑有两个选项 1.你有一个自定义的tmux命令,实际上连接在 或 之前2.你有一个tmux.conf文件指定了特殊的在任何情况下,打开新窗口 的情况tmux不能单独连接,因为它实际上并不知道你的终端窗口内部是什么 – Srgrn

1

你ssh进入远程服务器,执行tmux作为命令来启动一个新的tmux会话。然后,当您想要离开tmux会话时,您使用detach命令,之后您可以安全地关闭ssh会话而无需关闭tmux会话中仍在运行的任何内容。当您返回时,您使用tmux attach附加到仍在运行的tmux会话,并在您离开的地方恢复工作。

+0

我在进入远程服务器之前必须在本地主机中执行tmux。而我想要做的是当我在Tmux中创建一个新窗口时,我想在新窗口中保持ssh连接。 –