Есть ли способ представить имя сеанса экрана GNU и заголовок окна в приглашении оболочки (скажем, приглашение Bash, определенное как PS1
)?
bash
gnu-screen
prompt
brandizzi
источник
источник
screen -xr 2466 -X windows
.Ctrl-a A
?screen
был скомпилирован с-Q
опцией (query), то вы можете запускать некоторые команды, такие какtitle
и,windows
и выводить данные на стандартный вывод, однако без завершающей строки.Я всегда использую точные имена сеансов экрана. Затем я могу добавить STY env var экрана с вычеркнутым числовым идентификатором (спасибо dimo414) к PS1. Я не украшаю его фигурными скобками или чем-то еще, потому что я не всегда на сессии. Простой пример:
источник
Я использую это:
удаляет номер процесса из
${STY}
включает номер окна (как упоминалось "во время создания")
включает заголовок окна (как возвращено из
screen -Q title
)заметки:
screen -Q
ждет возвратаисточник
${STY#[0-9]*.}
позволяет избежать необходимости проходить через негоsed
.