如何恢复屏幕(GNU屏幕)

Van*_*ana 38 shell gnu-screen

假设我打开了很多屏幕,我想使用'screen -r'恢复到特定的屏幕会话,这是我执行屏幕时得到的-r有几个合适的屏幕:

12670.pts-8.b-dev03 (Detached)
23662.pts-9.b-dev03 (Detached)
502.pts-1.b-dev03   (Attached)
19972.pts-1.b-dev03 (Detached)
9414.pts-24.b-dev03 (Attached)
16607.pts-1.p-dev03 (Detached)
3015.pts-2.b-dev03  (Detached)
14313.pts-18.b-dev03    (Attached) 
Type "screen [-d] -r [pid.]tty.host" to resume one of them.
Run Code Online (Sandbox Code Playgroud)

我如何恢复其中一个,让我们说最后一个附加.我试过了 -

screen -r 14313.pts-18.b-dev03
 There is a screen on:
14313.pts-18.b-dev03    (Attached)
There is no screen to be resumed matching 14313.pts-18.b-dev03.
Run Code Online (Sandbox Code Playgroud)

Adr*_*rth 51

措辞有点不走运 - 这是因为仍然有一个screen会话连接14313.pts-18.b-dev03,你不能简单地"恢复"一个非分离的会话.-x除了使用第二个screen实例附加到此会话之外,您还需要使用该选项(或者,首先分离现有会话):

-X

  Attach to a not detached screen session. (Multi display mode).
Run Code Online (Sandbox Code Playgroud)
$ screen -xr 14313
Run Code Online (Sandbox Code Playgroud)

如果您希望分离第一个会话:

-d -r

  Reattach a session and if necessary detach it first.
Run Code Online (Sandbox Code Playgroud)
$ screen -dr 14313
Run Code Online (Sandbox Code Playgroud)