如何为屏幕指定名称?

spa*_*r79 455 unix linux shell gnu-screen

screen在命令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.
Run Code Online (Sandbox Code Playgroud)

我希望看到这样的事情:

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

我怎样才能做到这一点?

小智 622

开始一个新的会话

screen -S your_session_name

重命名现有会话

Ctrl+ a,:sessionname YOUR_SESSION_NAMEEnter

你必须在会话中

  • 这是适当的解决方案,因为它侧重于重命名现有会话而不是创建新会话. (14认同)
  • 关于`Ca:`syntax ...的快速说明."所有屏幕命令都以转义键为前缀,默认为"Ca"(即Control-a,有时写成`^ a`).发送文字`Ca`对于屏幕中的程序,使用"Ca a".这在屏幕内使用屏幕时非常有用.例如,"Ca an"会将屏幕移动到屏幕上的新窗口." (参考:http://aperiodic.net/screen/quick_reference) (4认同)
  • 几年后看了之后同意:D (2认同)

mie*_*war 591

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

screen -S foo
Run Code Online (Sandbox Code Playgroud)

然后重新连接它,运行

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

  • 在您的解决方案中,您将解释如何使用正确的名称创建新的名称,而不是更改现有名称.如果可以保留会话,则没有人想要终止会话. (16认同)
  • 向下滚动到user164176的答案,了解如何重命名现有会话. (10认同)

小智 52

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

Ctrl+ a,A

哪个提示:

Set windows title to:SESSIONTITLE
Run Code Online (Sandbox Code Playgroud)

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

Ctrl+ a,"

  • 您将_session_和_window_这两个词视为可互换的.`Ctrl + a`,`A`没有设置_session_名称(`SESSIONNAME`),它只设置当前的_window_标题.使用`screen -list`查询时,会话中的窗口标题不会出现在会话列表中.该问题询问如何设置_session_名称. (39认同)
  • 有用但它会更改当前窗口标题,而不是会话名称. (5认同)

小智 10

最简单的方法是使用名称屏幕

screen -S 'name' 'application'
Run Code Online (Sandbox Code Playgroud)
  • Ctrl+ a,d=退出并保持应用程序打开

返回屏幕:

screen -r 'name'
Run Code Online (Sandbox Code Playgroud)

例如使用lynx与屏幕

创建屏幕:

screen -S lynx lynx
Run Code Online (Sandbox Code Playgroud)

Ctrl+ a,d=退出

以后你可以回复:

screen -r lynx
Run Code Online (Sandbox Code Playgroud)

  • 这有三个问题.首先,有几个人已经发布了这个.其次,你告诉他他已经知道的基本屏幕用法.第三,你实际上没有回答这个问题,因为他询问如何命名已经存在的屏幕会话. (18认同)