你如何在byobu(tmux)中分离远程屏幕会话?

时间:2013-01-24 02:07:57

标签: tmux gnu-screen byobu

我目前正处于一个byobu-tmux会话中,并且进入了一个屏幕会话。如何在不分离byobu-tmux会话的情况下分离远程屏幕会话?有些事情需要注意,我不能运行byobu-config,因为我在osx上并且没有安装python-newt(w / snack)。并且,我在Emacs模式下运行byobu-ctrl-a,但这似乎不允许我从远程屏幕会话中进行控制。

7 个答案:

答案 0 :(得分:22)

您应该可以使用 Ctrl - a 进行双重转义。

要向内部byobu屏幕会话发送分离消息,请按:

Ctrl - a Ctrl - a d

完全披露:我是Byobu的作者和维护者。

答案 1 :(得分:19)

使用tmux命令很容易:

byobu-tmux detach
byobu-tmux

甚至只是:

byobu detach
byobu

答案 2 :(得分:16)

在第一个 a 之后尝试放开 ctrl ,所以序列是 ctrl - a ,< kbd> a , d 。男人的屏幕:

  

C-a C-a(其他)切换到显示的窗口   先前。请注意这一点                                绑定默认为命令字符键入两次,除非                                覆盖。例如,如果您使用选项“-e] x”,则此                                命令变为“]]”。

     

C-a a(meta)将命令字符(C-a)发送到   窗口。见escape com-                                普通话。

或者,如果您使用tmux而不是Byobu的屏幕,请尝试 ctrl - a d 。 Byobu的默认前缀键是 ctrl - b ,所以如果你使用那个默认值,加倍 ctrl - a 按键不是必需的。

来源:https://askubuntu.com/a/309215/106100

答案 3 :(得分:10)

我能够通过列出当前客户端内的所有客户端来实现此目的:

$ byobu list-clients
/dev/pts/67: 1 [80x24 xterm] (utf8) 
/dev/pts/70: 1 [157x48 xterm-256color] (utf8) 

然后分离远程客户端(根据屏幕大小确定):

$ byobu detach -t /dev/pts/67

现在我可以使用我的完整窗口大小

答案 4 :(得分:6)

或许与tmux无关,但对于byobu,我发现以下命令非常有用:分离除当前的所有会话:

/usr/lib/byobu/include/tmux-detach-all-but-current-client

希望这会有所帮助

答案 5 :(得分:0)

如果本地会话的前缀与远程会话冲突,则需要切换它的前缀。例如,如果两者都使用CTRL + A,那么你就有麻烦了。你可以发送一个原始命令(有一个序列,但我不记得它),或者去简单的路由并将本地会话重新映射到Ctrl + B,然后你可以输入Ctrl + A,它将被路由到远程会话。也与tmux无关,但ssh连接本身可以输入“〜”。并且它将与ssh会话断开连接。希望它有所帮助。

答案 6 :(得分:-1)

十多年来,我一直是Linux上byobu的狂热用户。在这些年的大部分时间里,在OSX上配置byobu的brew安装后,我终于成功地设置了我的byobu配置。首先我执行了这个:

echo '/usr/local/lib/python2.7/site-packages' | sudo tee /Library/Python/2.7/site-packages/homebrew.pth

然后我运行了byobu配置文件:

byobu-config

最后我清理了

sudo rm /Library/Python/2.7/site-packages/homebrew.pth

Python随着一些弹出窗口一路崩溃,然而,byobu现在可以为我工作。当我想再次更改配置时,我确实需要重复这些步骤,但仍在寻找更清洁的解决方案。