Browse Source

screen command

dev
esoe 2 years ago
parent
commit
2808f7db12
  1. 36
      linux/screen.md

36
linux/screen.md

@ -1,4 +1,6 @@
# Screen command # Screen command
<b>Комманда screen операционной системы linux</b>
## Ссылки / links ## Ссылки / links
[Ubuntu: manpages](https://manpages.ubuntu.com/manpages/bionic/man1/screen.1.html)<p> [Ubuntu: manpages](https://manpages.ubuntu.com/manpages/bionic/man1/screen.1.html)<p>
[Baeldung: linux](https://translated.turbopages.org/proxy_u/en-ru.ru.87f13298-63ac1c2f-c385dbbc-74722d776562/https/www.baeldung.com/linux/screen-command#building-a-session) [Baeldung: linux](https://translated.turbopages.org/proxy_u/en-ru.ru.87f13298-63ac1c2f-c385dbbc-74722d776562/https/www.baeldung.com/linux/screen-command#building-a-session)
@ -13,25 +15,23 @@
## Установка screen ## Установка screen
$ apt-get install screen $ apt-get install screen
Данная команда установит программу screen в операционную систему.
# Работа с сессией # Работа с сессией / screen
## Запуск screen ## Запуск сессии / screen
$ screen $ screen
аа
По умолчанию, сессия включает только одно окно экрана (по аналогии с вкладками браузера), который представляет из себя командную строку в директории, где была запущена команда screen. По умолчанию, сессия включает только одно окно экрана (по аналогии с вкладками браузера), который представляет из себя командную строку в директории, где была запущена команда screen.
## Просмотр запущеных на экране окон ## Просмотр запущеных на экране окон
$ CTRL+a " $ CTRL+a "
Покажет номера окон (Num) и наименования (Name). Покажет номера окон (Num) и наименования (Name)
## Именование или переименование экрана ## Именование или переименование экрана
$ CTRL+a SHIFT+a $ CTRL+a SHIFT+a
Set window's title to: [newName] Set window's title to: [newName]
далее можно посмотреть список запущенных экранов и увидеть измененное название Далее можно посмотреть список запущенных экранов и увидеть измененное название
## Создание второго окна на экране ## Создание второго окна на экране
$ CTRL+a c $ CTRL+a c
@ -46,11 +46,15 @@ Set window's title to: [newName]
## Паралельное исполнение команд в разных окнах одного экрана ## Паралельное исполнение команд в разных окнах одного экрана
- запускаем в одном окне процесс, записыающий результат выполнения в файл: - запускаем в одном окне процесс, записыающий результат выполнения в файл:
$ echo Starting at $(date) > counter.txt; \ $ echo Starting at $(date) > counter.txt; \
while true; do echo $(date); sleep 5; \ while true; do echo $(date); sleep 5; \
done >> counter.txt done >> counter.txt
- запускаем во втором окне процесс, слушающий изменения в файле:<p> - запускаем во втором окне процесс, слушающий изменения в файле:
$ tail -f counter.txt {выводит последнюю строку файла в консоль} $ tail -f counter.txt {выводит последнюю строку файла в консоль}
Мы запустили некий код в одном окне и мониторим за его исполнением в другом. Мы запустили некий код в одном окне и мониторим за его исполнением в другом.
@ -60,19 +64,19 @@ Set window's title to: [newName]
просто закрыть терминал просто закрыть терминал
откючиться от сессии командой откючиться от сессии командой
$ CTRL+a d $ CTRL+a d
При этом терминал закрывается, а сессия остается активной и подолжает исполняться. При этом терминал закрывается, а сессия остается активной и подолжает исполняться.
- подключение к последнему закрытому экрану/screen - подключение к последнему закрытому экрану/screen
$ screen -R $ screen -R
## Закрыть экран / screen ## Закрыть экран / screen
Закрыть сессию / screen можно закрыв последовательно все окна на экране. Закрыть сессию / screen можно закрыв последовательно все окна на экране.
Закрыть окно можно выполнив команду exit в активном окне: Закрыть окно можно выполнив команду exit в активном окне:
$ exit $ exit
После этого окно закроется и активным станет предыдущее окно После этого окно закроется и активным станет предыдущее окно
Когда будет выполнена команда exit в последнем окне, экран / screen / сессия закроется и в консоли будет выведено: Когда будет выполнена команда exit в последнем окне, экран / screen / сессия закроется и в консоли будет выведено:
$ screen is terminating $ screen is terminating
## Настройка и сохранение сессии ## Настройка и сохранение сессии
@ -80,19 +84,11 @@ $ screen is terminating
Это позволяет: Это позволяет:
- быстро загружать нужную сессию, - быстро загружать нужную сессию,
- переносить сессию с одного компьютера на другой. - переносить сессию с одного компьютера на другой.
Поместим в файл <b>".screenrc"</b>, размещенный в домашней директории следующие команды:
Поместим в файл .screenrc, размещенный в домашней директории следующие команды:
$screen -t logs $screen -t logs
$screen -t timer $screen -t timer
После созранения файла с настройками и запуска команды После созранения файла с настройками и запуска команды
$ screen $ screen
Можно проверять список активных окон: Можно проверять список активных окон:
CTRL+a " CTRL+a "
<b>Также в файле .screenrc может быть размещено множество дополнительных настроек.</b>
Также в файле .screenrc может быть размещено множество дополнительных настроек.
Loading…
Cancel
Save