如何从另一个终端远程分离屏幕

如何从另一个终端远程分离屏幕

所以我面前有两个终端打开;

  1. /dev/pts/1 - '控制器'
  2. /dev/pts/2 - '接收者'

我目前正在使用蒂耶乔从 /pts1 执行 /pts2 中的命令。
我可以列出 /pts1 中的屏幕 -ttyecho -n /dev/pts/2 screen -ls很好,并在 /pts2 中查看结果。
我可以从 /pts1 到 /pts2 很好地连接到屏幕ttyecho -n /dev/pts/2 screen -x [blah]。但是我不能做的是,当连接到屏幕时然后与其分离。

因此,如果 /dev/pts/2 位于屏幕内,我尝试通过使用 /dev/pts1 中的 ttyecho 执行命令来与其分离

我试过发送...

ttyecho -n /dev/pts/2 ^a+d  
ttyecho -n /dev/pts/2 screen -d -r 
ttyecho -n /dev/pts/2 screen -D -RR
ttyecho -n /dev/pts/2 screen -d -r
ttyecho -n /dev/pts/2 screen -DRi
ttyecho -n /dev/pts/2 Ctrl+a+d
ttyecho -n /dev/pts/2 Ctrl+a d
ttyecho -n /dev/pts/2 CTRL + A
ttyecho -n /dev/pts/2 control+a

所以我想我需要的是:

  • 我可以发送一个命令来分离屏幕或者
  • 以某种方式将某种伪键盘命令发送ttyecho到另一个屏幕以将其分离。

非常感谢任何帮助。

答案1

你可以做

$ screen -ls

这将列出所有屏幕会话,如下所示。

There are screens on:
        8365.pts-6.vm2    (Attached)
        7317.pts-1.vm2    (Attached)
2 Sockets in /var/run/screen/S-root.

然后,您可以借助屏幕 ID 分离任何屏幕会话。

例如:

$ screen -d 8365
[8365.pts-6.vm2 detached.]

答案2

无需使用ttyecho来分离screen会话,您可以要求screen为您执行此操作:

screen -d pts-2

这将分离与名称“pts-2”匹配的会话,默认情况下该会话将与 上启动的屏幕会话匹配pts/2

相关内容