2010-05-29 46 views
7

我在单个screen会话中有几个窗口,然后我想分离会话。这没有问题。gnu屏幕:重新连接以前分离的所有会话

但我找不到方法来恢复我以前分离的会话中的所有窗口。我可以看到,我可以通过ID恢复其中的一个。

但是,我怎么能重新连接完全相同的会议环境,其中的所有窗口?

-

Updated:

如果键入屏幕-d -r,这是什么,是说:

There are several suitable screens on: 
    21074.pts-7.atx (05/29/2010 02:26:32 PM) (Attached) 
    3420.pts-3.atx (05/29/2010 12:16:41 AM) (Detached) 
Type "screen [-d] -r [pid.]tty.host" to resume one of them. 

我怎样才能重新连接所有的人?

回答

18

screen -d -r : Reattach a session and if necessary detach it first.

这将重新安装你的旧的会话,将其全部窗口。如果您的会话仍然连接,它将在将其附加到当前终端之前将其分离。例如,当您将屏幕会话保存在另一台计算机的ssh终端中时,这非常有用。

+0

tonio,请查看问题的更新。我的错误在哪里? – ep3static 2010-05-29 16:59:33

+2

在您的更新中,屏幕显示它无法重新附加会话,因为它不知道重新附加哪一个:有两个。 IT甚至会为您提供关于如何选择一个或另一个会话的历史记录(当您不提供会话ID时,它预计只有一个,并使用该会话ID)。 在这里第一个已经连接,而第二个分离。尝试使用 'screen -r 3420.pts-3.atx' – tonio 2010-05-29 17:04:02

+0

将其重新附加到当前终端。我现在明白了。谢谢,tonio! – ep3static 2010-05-29 17:12:11

1

重新挂接全部先前分离的会话我使用这个小脚本。

#!/bin/sh 
for line in `screen -ls | grep Detached | awk '{print $1}'`; do 
    xdotool key control+shift+t type "screen -r $line" 
    xdotool key KP_Enter 
done 

“控制+移+ T”碰巧在我的终端用于打开新的标签页的快捷方式,它可以是你的不同的快捷方式。

相关问题