Screen - это очень мощный консольный мультиплексор при работе с одним соединением или одним окном терминала. С возможностью прервать работу (перезагрузка оболочки) и с такой же легкостью восстановить с того места где ее остановили со всеми открытыми окнами. Ко всему этому есть возможность поиска в текущем окне, а также поддержка скроллинга по окну.
Рассмотрим основные флаги при использовании консольного мультиплексора screen:
| -A | подгонка размера окна screen под размер терминала |
| -ls | вывод списка отключенных окон |
| -d | отключение сессии screen |
| -D | отключение сессии screen, с игнорированием ошибок |
на невозможность отключится |
| -r [pid.tty.host] | подключение к первой найденной сессии (если таковая |
имеется) или подключение к определенной сессии, |
код которой можем получить использовав флаг -ls |
| -R | подключение к первой найденной сессии, а в случае ее |
отсуствия создания новой. Может быть использована |
и для подключения к определенной сессии |
| -x | |
Рассмотрим основные команды при использовании консольного мультиплексора screen:
| C^a F | подогнать размер всех окон под размер терминала |
| C^a c | создать новое окно |
| C^a ' | перейти на n-ое окно |
| C^a " | вывести список окон |
| C^a n | перейти на следующее окно |
| C^a p | перейти на предыдущее окно |
| C^a [0..9] | перейти на n-ое окно |
| C^a A | сменить название окна |
| C^a a | нажатие буквы а |
| C^a [ | режим копирования (выделение идет по нажатию пробела), |
в некоторых случаях позволяет "листать" окно, |
когда клавиши Shift+PgUp и Shift+PgDown не работают |
| C^a ] | вставить скопированное в буфер |
| C^a x | заблокировать screen |
| C^a d | отключится от screen |
| C^a k | закрыть текущее окно |
| C^a \ | выход из screen |
У кого возникает вопрос что такое C^a, то ответ очень прост - это комбинация клавиш Ctrl + a.
Остальные возможности можно узнать командой:
man screen
А также внути screen можно получить справку по горячим клавишам, нажав соответствующую комбинацию:
C^a ?
Ну и на последок привожу свой конфигурационный файл ~/.screenrc:
startup_message off
altscreen on
vbell off
autodetach on
hardstatus alwayslastline "%-Lw%{= KW}%50>%n%f* %t%{-}%+Lw%<"
Если кратко, то тут отключается лицензионное соглашение на старте и визуальные сигналы (мерцание экрана). Включается возможность автоотключения от screen в случае разрыва соединения (по умолчанию off, поэтому в случае разрыва соединения - сессию восстановить будет невозможно), ко всему этому еще измененена и строка статуса.