From 2808f7db12f02eaf04129a74e7c5476dbe3da4da Mon Sep 17 00:00:00 2001 From: esoe Date: Wed, 28 Dec 2022 22:54:44 +0300 Subject: [PATCH] screen command --- linux/screen.md | 190 ++++++++++++++++++++++++------------------------ 1 file changed, 93 insertions(+), 97 deletions(-) diff --git a/linux/screen.md b/linux/screen.md index 911c4f1..0ba2c86 100644 --- a/linux/screen.md +++ b/linux/screen.md @@ -1,98 +1,94 @@ # Screen command -## Ссылки / links -[Ubuntu: manpages](https://manpages.ubuntu.com/manpages/bionic/man1/screen.1.html)

-[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) - -## Назначение -Реализация многооконного режима в консоли -позволяет запускать программы, которые будут выполняться даже при закрытой консоли и не будут останавливаться при разрыве ssh соединения. - -## Область применения -- удаленная работа с сервером (ssh-соединение) -сохранение доступа к рабочей сессии с возможностью последующего подключения и восстановления работы с сессией - -## Установка screen -$ apt-get install screen - -# Работа с сессией - -## Запуск screen -$ screen -аа - -По умолчанию, сессия включает только одно окно экрана (по аналогии с вкладками браузера), который представляет из себя командную строку в директории, где была запущена команда screen. - -## Просмотр запущеных на экране окон -$ CTRL+a " -Покажет номера окон (Num) и наименования (Name). - -## Именование или переименование экрана -$ CTRL+a SHIFT+a - -Set window's title to: [newName] - -далее можно посмотреть список запущенных экранов и увидеть измененное название - -## Создание второго окна на экране - $ CTRL+a c - - второму окну стоит присвоить новое имя - - далее можно посмотреть список запущенных окон и увидеть измененное название второго окна - -## Переключение между окнами экрана - $ CTRL+a n {перейти к следующему окну} - $ CTRL+a p {перейти к предыдущему окну} - $ CTRL+a CTRL+a {Переключение к предыдущему активному окну} - $ CTRL+a " {Далее можно переключаться между окнамистрелками "вверх" и "вниз"} - -## Паралельное исполнение команд в разных окнах одного экрана -- запускаем в одном окне процесс, записыающий результат выполнения в файл: - $ echo Starting at $(date) > counter.txt; \ - while true; do echo $(date); sleep 5; \ - done >> counter.txt - -- запускаем во втором окне процесс, слушающий изменения в файле:

- $ tail -f counter.txt {выводит последнюю строку файла в консоль} - -Мы запустили некий код в одном окне и мониторим за его исполнением в другом. - -## Переподключение к экрану / screen сессии -- завершение сессии: - просто закрыть терминал - откючиться от сессии командой - $ CTRL+a d - При этом терминал закрывается, а сессия остается активной и подолжает исполняться. -- подключение к последнему закрытому экрану/screen - $ screen -R - -## Закрыть экран / screen -Закрыть сессию / screen можно закрыв последовательно все окна на экране. -Закрыть окно можно выполнив команду exit в активном окне: - - $ exit - -После этого окно закроется и активным станет предыдущее окно -Когда будет выполнена команда exit в последнем окне, экран / screen / сессия закроется и в консоли будет выведено: - -$ screen is terminating - -## Настройка и сохранение сессии -Настройки screen сессии хранятся в виде команд в файле .screenrc, который размещается в домашней директории пользователя. -Это позволяет: -- быстро загружать нужную сессию, -- переносить сессию с одного компьютера на другой. - -Поместим в файл .screenrc, размещенный в домашней директории следующие команды: - -$screen -t logs - -$screen -t timer - -После созранения файла с настройками и запуска команды - -$ screen - -Можно проверять список активных окон: - -CTRL+a " - -Также в файле .screenrc может быть размещено множество дополнительных настроек. \ No newline at end of file + Комманда screen операционной системы linux + + ## Ссылки / links + [Ubuntu: manpages](https://manpages.ubuntu.com/manpages/bionic/man1/screen.1.html)

+ [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) + + ## Назначение + Реализация многооконного режима в консоли + позволяет запускать программы, которые будут выполняться даже при закрытой консоли и не будут останавливаться при разрыве ssh соединения. + + ## Область применения + - удаленная работа с сервером (ssh-соединение) + сохранение доступа к рабочей сессии с возможностью последующего подключения и восстановления работы с сессией + + ## Установка screen + $ apt-get install screen + Данная команда установит программу screen в операционную систему. + +# Работа с сессией / screen + + ## Запуск сессии / screen + $ screen + По умолчанию, сессия включает только одно окно экрана (по аналогии с вкладками браузера), который представляет из себя командную строку в директории, где была запущена команда screen. + + ## Просмотр запущеных на экране окон + $ CTRL+a " + Покажет номера окон (Num) и наименования (Name) + + ## Именование или переименование экрана + $ CTRL+a SHIFT+a + Set window's title to: [newName] + + Далее можно посмотреть список запущенных экранов и увидеть измененное название + + ## Создание второго окна на экране + $ CTRL+a c + - второму окну стоит присвоить новое имя + - далее можно посмотреть список запущенных окон и увидеть измененное название второго окна + + ## Переключение между окнами экрана + $ CTRL+a n {перейти к следующему окну} + $ CTRL+a p {перейти к предыдущему окну} + $ CTRL+a CTRL+a {Переключение к предыдущему активному окну} + $ CTRL+a " {Далее можно переключаться между окнамистрелками "вверх" и "вниз"} + + ## Паралельное исполнение команд в разных окнах одного экрана + - запускаем в одном окне процесс, записыающий результат выполнения в файл: + + $ echo Starting at $(date) > counter.txt; \ + + while true; do echo $(date); sleep 5; \ + + done >> counter.txt + + - запускаем во втором окне процесс, слушающий изменения в файле: + + $ tail -f counter.txt {выводит последнюю строку файла в консоль} + + Мы запустили некий код в одном окне и мониторим за его исполнением в другом. + + ## Переподключение к экрану / screen сессии + - завершение сессии: + просто закрыть терминал + откючиться от сессии командой + $ CTRL+a d + + При этом терминал закрывается, а сессия остается активной и подолжает исполняться. + + - подключение к последнему закрытому экрану/screen + $ screen -R + + ## Закрыть экран / screen + Закрыть сессию / screen можно закрыв последовательно все окна на экране. + Закрыть окно можно выполнив команду exit в активном окне: + $ exit + + После этого окно закроется и активным станет предыдущее окно + Когда будет выполнена команда exit в последнем окне, экран / screen / сессия закроется и в консоли будет выведено: + $ screen is terminating + + ## Настройка и сохранение сессии + Настройки screen сессии хранятся в виде команд в файле .screenrc, который размещается в домашней директории пользователя. + Это позволяет: + - быстро загружать нужную сессию, + - переносить сессию с одного компьютера на другой. + Поместим в файл ".screenrc", размещенный в домашней директории следующие команды: + $screen -t logs + $screen -t timer + После созранения файла с настройками и запуска команды + $ screen + Можно проверять список активных окон: + CTRL+a " + Также в файле .screenrc может быть размещено множество дополнительных настроек. \ No newline at end of file