Переименовать сеанс экрана

193

Можно ли изменить название сеанса экрана GNU? Допустим, я позвонил, начал с «screen -S foo» и хочу переименовать его в bar.

marcog
источник
15
@ l0b0 Это насчет имен. Это о переименовании.
Marcog

Ответы:

293

Резюме

Ca: sessionname mySessionName

подробности

Это,

  1. Прикрепить к рассматриваемой сессии.

  2. Нажмите Ctrl+ A.

  3. Типа - да, там нужен первый двоеточие, лишних пробелов нет.:sessionname mySessionName

  4. Тип Enter.

пример

$ screen -S foo
[отделено от 8890.foo]
$ screen -ls
Есть экран на:
    8890.foo (22.12.11 18:39:22) (Отдельно)
1 Разъем в / var / run / screen / S-user.

$ screen -r

Ctrl+ A: столбцы сессий

[отделено от 8890.bars]
$ screen -ls
Есть экран на:
    8890.bars (22.12.11 18:39:21) (Отдельно)
1 Разъем в / var / run / screen / S-user.

$ 

Переименование без присоединения

-XПереключатель экрана позволяет переименовать сессию, не подключая ее.

$ screen -X sessionname foobars
$ screen -ls
There is a screen on:
    8890.foobars    (22/12/11 18:39:22) (Detached)
1 Socket in /var/run/screen/S-user.

$ 

Кроме того, вы можете указать целевой сеанс экрана по его существующему имени или идентификатору (полезно, если уже есть несколько сеансов):

$ screen -ls
There is a screen on:
    8890.foo        (02/23/2015 18:39:22)   (Detached)
    5136.barfoos    (02/23/2015 18:39:22)   (Detached)
1 Socket in /var/run/screen/S-user.

$ screen -S 8890.foo -X sessionname foobars
$ screen -ls
There is a screen on:
    8890.foobars    (02/23/2015 18:39:22)   (Detached)
    5136.barfoos    (02/23/2015 18:39:22)   (Detached)
1 Socket in /var/run/screen/S-user.

$ 
G-Man
источник
61

Если есть несколько сессий, используйте:

screen -S 8890.foo -X sessionname bar
напоминание
источник
8
Это лучший ответ, чем приведенный выше, потому что он касается общего случая множественных сессий
доун
2
Это лучший ответ
Кок
получить фактическое имя сеанса, screen -lsкак указано в других ответах
swiesend
Это гораздо лучший ответ, который ясен и прост. Огромное спасибо.
Марс Ли
9

Это переименовывает текущий заголовок окна в сеансе, как показано в списке окон при нажатии Ctrl - a+ ":

  • Во время сеанса экрана нажмите Ctrl - a+ A(это заглавная буква a , т.е. Shift+ a), введите новое имя и нажмитеEnter

Теперь, когда вы сделаете Ctrl - a+ "имя, которое вы установите, появится в списке окон вместо bash.

ПРИМЕЧАНИЕ. Это не отвечает на исходный вопрос, но я не удаляю ответ, поскольку, по-видимому, некоторые посетители этой цепочки искали способ переименовать заголовок окна, а не сам сеанс, как просил ОП.

ccpizza
источник
5
Я думаю, что вопрос был о переименовании сессии , но этот ответ переименовывает окна .
Дэн Гравелл