Если вы часто работаете с удалёнными серверами или запускаете долгие процессы в терминале, вы наверняка сталкивались с ситуацией, когда обрыв соединения обрывал и вашу работу. Утилита screen
— это мощный инструмент, который позволяет запускать терминальные сессии, отсоединяться от них и возвращаться позже, не теряя состояния.
# Установка на Ubuntu/Debian
sudo apt install screen
# Установка на CentOS/RHEL
sudo yum install screen
# Установка на Arch
sudo pacman -S screen
В этой статье мы рассмотрим базовые команды screen
, горячие клавиши для работы внутри сессий и способы завершения работы. Всё — в удобном формате.
Основные команды screen
Команда | Описание |
---|---|
screen -S name | Создать новую сессию с именем name |
screen -ls | Показать список активных сессий |
screen -r name | Подключиться к сессии по имени |
screen -r ID | Подключиться к сессии по её ID (из screen -ls ) |
screen -d name | Отключить сессию (полезно, если она «зависла») |
screen -d -r name | Принудительно отключить и подключиться к сессии |
screen -X -S name quit | Принудительно завершить сессию |
screen -wipe | Удалить «мёртвые» неактивные сессии |
Горячие клавиши внутри screen
Комбинация | Действие |
---|---|
Ctrl + A , затем D | Отключиться от текущей сессии |
Ctrl + A , затем C | Создать новое окно в сессии |
Ctrl + A , затем N | Переключиться на следующее окно |
Ctrl + A , затем P | Переключиться на предыдущее окно |
Ctrl + A , затем " | Показать список окон |
Ctrl + A , затем 0-9 | Переключение между окнами по номеру |
Ctrl + A , затем X | Закрыть текущее окно |
Ctrl + A , затем ` | Вернуться в последнее активное окно |
Ctrl + A , затем S | Разделить экран по горизонтали |
Ctrl + A , затем Tab | Переключение между частями экрана |
Ctrl + A , затем Q | Закрыть все области кроме активной |
Ctrl + A , затем K | Принудительно закрыть окно |
Ctrl + A , затем ? | Показать справку по командам screen |
Завершение работы
Команда | Описание |
---|---|
exit | Закрывает текущее окно (если оно последнее — завершает всю сессию) |
Ctrl + A , затем \ | Завершить все окна и полностью закрыть screen |
screen -X -S name quit | Принудительно завершить сессию по имени |
screen
— незаменимый инструмент для системных администраторов, разработчиков и всех, кто работает в терминале. Он позволяет гибко управлять сессиями, переключаться между окнами и даже делить экран. Освоив базовые команды и горячие клавиши, вы значительно упростите свою работу в командной строке.