506

我在命令外壳上使用屏幕多路复用器工具并打开很多屏幕。然后我忘记了哪个进程 ID 与哪个任务相关联。

我想为屏幕设置名称,但在手册页中找不到选项。

目前,列出屏幕如下所示:

There are screens on:
    5422.pts-1.aws1 (Detached)
    5448.pts-1.aws1 (Detached)
    5027.pts-1.aws1 (Detached)
3 Sockets in /var/run/screen/S-sb.

我想看到这样的东西:

There are screens on:
    5422.logCleanWorker (Detached)
    5448.overNightLongTask(Detached)
    5027.databaseOverNightLongTask (Detached)
3 Sockets in /var/run/screen/S-sb.

我怎样才能做到这一点?

4

5 回答 5

749

开始新会话

screen -S your_session_name

重命名现有会话

Ctrl+ a,:会话名称 YOUR_SESSION_NAMEEnter

您必须在会话内

于 2010-07-22T14:05:36.563 回答
600

要使用名称创建新屏幕foo,请使用

screen -S foo

然后重新连接它,运行

screen -r foo  # or use -x, as in
screen -x foo  # for "Multi display mode" (see the man page)
于 2010-07-08T09:29:59.787 回答
55

如前所述,screen -S SESSIONTITLE适用于以标题 ( SESSIONTITLE) 开始会话,但如果您开始会话并稍后决定更改其标题。这可以通过使用默认键绑定来完成:

Ctrl+ a,A

其中提示:

Set windows title to:SESSIONTITLE

SESSIONTITLE通过退格并键入所需的标题进行更改。确认名称更改并列出所有标题。

Ctrl+ a,"

于 2013-03-11T06:19:25.940 回答
16

最简单的方法是使用带有名称的 Screen:

screen -S 'name' 'application'
  • Ctrl+ a, d= 退出并让应用程序保持打开状态

返回屏幕:

screen -r 'name'

例如,将 Lynx 与 Screen 一起使用。

创建屏幕:

screen -S lynx lynx

Ctrl+ a, d= 退出

稍后,您可以返回:

screen -r lynx
于 2012-09-26T04:56:06.690 回答
0

我是 Screen 的初学者,但我发现它在恢复丢失的连接时非常有用。

您的问题已经得到解答,但此信息可能作为附加信息 - 我将PuTTY与 PuTTY 连接管理器一起使用,并将我的屏幕命名为 - “tab1”、“tab2”等 - 至于我 8- 10 个选项卡比每个单独的选项卡名称更重要。我使用第 8 个选项卡连接到数据库,第 7 个选项卡用于查看日志等。所以当我想重新连接我的屏幕时,我编写了一个简单的包装器,上面写着:

#!/bin/bash
screen -d -r tab$1

其中第一个参数是选项卡编号。

于 2011-11-28T08:45:41.517 回答