我正在使用命令shell上的屏幕多路复用器工具,打开很多屏幕。然后我忘记了哪个进程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.

我该怎么做呢?


当前回答

我是一个屏幕的初学者,但我发现它在恢复失去的连接时非常有用。

你的问题已经回答了,但是这个信息可以作为补充-我使用PuTTY和PuTTY连接管理器,并将我的屏幕命名为“tab1”,“tab2”等等-对我来说,8-10个选项卡的整体图像比每个选项卡名称更重要。我使用第8个选项卡连接到db,第7个选项卡查看日志等等。所以当我想重新连接我的屏幕时,我写了一个简单的包装器,它说:

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

第一个参数是TAB号。

其他回答

如前所述,screen -S SESSIONTITLE用于用一个标题(SESSIONTITLE)开始一个会话,但如果你开始一个会话,后来决定改变它的标题。这可以通过使用默认键绑定来完成:

Ctrl + a, a

提示:

Set windows title to:SESSIONTITLE

通过退格和输入所需的标题来更改SESSIONTITLE。确认名称变更并列出所有标题。

Ctrl + a”,

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

screen -S 'name' 'application'

Ctrl + a, d = exit并保持应用程序打开

返回屏幕:

screen -r 'name'

例如,使用带有屏幕的Lynx。

创建一个屏幕:

screen -S lynx lynx

Ctrl+a, d = exit

稍后,您可以返回:

screen -r lynx

我是一个屏幕的初学者,但我发现它在恢复失去的连接时非常有用。

你的问题已经回答了,但是这个信息可以作为补充-我使用PuTTY和PuTTY连接管理器,并将我的屏幕命名为“tab1”,“tab2”等等-对我来说,8-10个选项卡的整体图像比每个选项卡名称更重要。我使用第8个选项卡连接到db,第7个选项卡查看日志等等。所以当我想重新连接我的屏幕时,我写了一个简单的包装器,它说:

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

第一个参数是TAB号。

开始一个新的会话

-S your_session_name

重命名已存在的会话

Ctrl+a,: sessionname YOUR_SESSION_NAME输入

您必须在会话中

要创建一个名为foo的新屏幕,请使用

screen -S foo

然后重新连接它,运行

screen -r foo  # or use -x, as in
screen -x foo  # for "Multi display mode" (see the man page)