我知道如何启动screen以及如何列出不同的屏幕:

screen -ls


或附加:

There are screens on:
        2477.pts-0.server1      (Detached)
        2522.pts-0.server1      (Detached)
2 Sockets in /var/run/screen/S-root.

$ screen -r 2477.pts-0.server1


但是从屏幕会话中分离并保持其运行的关键组合是什么?

#1 楼

Ctrl + a,然后按d。请注意小写。 [screen手册页]在“默认键绑定”下有这些快捷方式的一长串。

评论


我认为您的意思是 Ctrl-A d (小写)。大写字母(D)是'powerdetach'。

–Arcege
2012年4月25日在0:23

是的,按照@Arcege的建议, 与当前屏幕会话分离。对我有用。 似乎在等待其他内容,并且在我按任何其他键后立即收到“分离中止”消息。如果按下 ,则表示您已分离并从ssh注销。

–主题
17年7月7日在10:51

#2 楼

要列出您的会话,请运行:

screen -list



您可以在屏幕命令下运行任何命令,例如:

screen myscript.sh


然后按Ctrl + a(释放),然后按d断开进程/屏幕(这样它将继续运行)。


要恢复分离的进程,请使用:

screen -r


如果有多个会话,请在其后添加会话号。


还可以重新连接到已通过Attached屏幕显示。有助于调查其连接原因,与某人共享终端或查看/检查某人的工作。


要获取更多帮助,请运行screen -x或在屏幕上按Ctrl + a ,放开再打?要查看更多快捷方式。

另请参见:


如何在屏幕上执行命令并分离?


#3 楼

您可能会在屏幕手册页中看到这样列出的内容:

^a - d


请注意字母的大小写,因为大写和小写将执行不同的功能。

#4 楼

某些系统默认情况下会删除某些绑定。因此,最好查看在线绑定页面:Ctrl-a?。您还可以在screen中使用命令提示符:Ctrl-a:detach。我本人通常会除去远程系统上的“ detach”和“ powerdetach”键绑定。