GNU Screen/ru

From SHellium Wiki
Jump to: navigation, search
Geographylogo.png In other languages: English | Afrikaans | Albanian | Arabic | Brazilian | Bulgarian | Catalan | Chinese | Croatian | Czech | Danish | Dutch | Esperanto | Estonian | Filipino | Finnish | Flemish | French | German | Greek | Hebrew | Hindi | Hungarian | Indonesian | Italian | Japanese | Latvian | Lithuanian | Macedonian | Malay | Malayalam | Norwegian (Bokmål) | Norwegian (Nynorsk) | Persian | Polish | Portuguese | Romanian | Russian | Serbian | Slovak | Slovenian | Spanish | Swedish | Turkish | Ukrainian | Urdu

SCREEN

Введение Или как обойтись в мире консолей без иксов ;]

Screen - полноэкранный консольный менеджер окон, делящий физический терминал на виртуальные. Имеется буфер истории для каждого виртуального терминала и механизм копирования-вставки текста между окнами. При вызове screen создается единственное окно с Вашим шеллом в нем. Теперь Вы можете создавать новые окна (включая и шеллы), убивать их, перемещаться между ними, копировать и вставлять текст из одного окна в другое и тд. И самое главное - в любое время Вы можете отсоединиться от своего screen, а потом возобновить работу из другого места!!

Очень мощная штука, скажу я вам. Консольный менеджер окон - это чудо. Итак, начнем. Вводим в консоли

Код:

~$ screen

Появится лицензия, нажимаем Ентер. Появляется приглашение командной строки.



Все, мы в screen ) Это наше первое окно. Все вводимые команды и сочетания клавиш будут переданы программе, запущенной в активном окне. Все, кроме управляющего сочетания клавиш (по умолчанию - Ctrl + a).

Приведем самые часто употребляемые сочетания клавиш для управления screen: C-a С-c (зажать ctrl, нажать a, отпустить всё, зажать ctrl, нажать с =)))) - создает новое окно с шеллом и переключается на него.

C-a A - обозвать окно по-своему. Удобно, когда окон много, называть окно по его содержимому.

C-a C - очистить экран активного окна.

C-a C-k - уничтожить активное окно.

C-a C-n - переключиться на следующее окно.

C-a C-p - переключиться на предыдущее окно.

C-a " - список окон.

C-a ’ - строка ввода заголовка или номера окна для переключения.

C-a <Номер> переключается на окно с номером <Номер>

Итак, потыркавшись минут 5, уже имеем общее представление о screen и начальные навыки работы с ним. Запоминаем комбинации клавиш.

Едем дальше: C-a H - начать / закончить протоколирование активного окна в screenlog.номер_окна

C-a M - режим мониторинга за активным окном. Если в окне что-либо происходит, а Вы находитесь в другом окне, то вылезет подсказка об активности.

C-a F - подгоняет размер окна под размер терминала.

C-a C-g - включает / выключает режим vbell. В таком режиме системный звонок отображается миганием экрана.

C-a N - отображает номер и заголовок текущего окна.

C-a S - разделяет текущее окно на два региона (очень удобно, советую), которые, в свою очередь, тоже можно разделить. Для перехода между регионами - C-a Tab. В новом регионе создаем новое окно C-a C-c и работаем. Чтобы отменить разделение - C-a Q (удаляет все регионы, кроме текущего). C-a X - убивает только текущий регион.

C-a Esc - режим скроллинга и копирования. Для выделения участка текста - подвести курсор к началу нужного элемента и нажать пробел, а после выделения - опять пробел. Текст будет скопирован в буфер. Для выхода из режима - Esc.

C-a ] - вставить текст из буфера.


Все вроде разобрались. Теперь - самое интересное.

C-a C-d - отсоединяет screen от текущего терминала с возможностью последующего (а также множественного) подключения.

Отсоединяемся на работе, приходим домой, заходим по ssh и подключаемся к своему screen. Все окна на месте, все процессы работают. Как будто и не уходил вовсе )

Параметры запуска screen:

-ls - выдает список отсоединенных screen'ов.

-r pid.tty.host - подключиться к screen.

Прим Xorkrus2: Если Вы не открывали несколько сессий screen'a, то для подключения достаточно набрать в терминале:

  $ screen -r

т.е. без дополнительных параметров. Будет подключена Ваша отключеная сессия (повторюсь: при условии что она была одна).

-d -m - запускает screen, однако не присоединяетего к текущему терминалу. Тоесть, к не му в последствии подключиться можно. Полезно для загрузочных скриптов.

-x - присоединиться к неотсоединенному screen - позволяет одновременно работать с разных мест разным людям. Удобно.

-wipe - тоже самое, что и -ls. однако мертвые сесси не указывает, как "destroyed", а уничтожает.

-U - запускает screen в режиме кодировки UTF-8.

-R - пытается присоединиться к первому найденному отсоединенному screen. Если не находит - создает новый Screen.

Через полчаса я с помощью одного терминала сидел в аське, ирке, писал статьи, качал диски, слушал музыку (делал свои обычные дела) в одном терминале с помощью screen. Никаких иксов. Никаких кед, гномов и т д.

Вывод - супер, мастхев. Спасибо генералу ALXZ и Капитан-лейтенанту FantoMax за подсказку. Всем спасибо )

Настройка screen

Personal tools
Namespaces

Variants
Actions
Navigation
Indexes
SHellium Sites
Toolbox