Работа со screen'ом: различия между версиями

Материал из wiki.nntc.nnov.ru
Перейти к навигации Перейти к поиску
 
Строка 1: Строка 1:
 +
==screen==
 
Screen - полноэкранный консольный менеджер окон, делящий физический терминал на виртуальные. Имеется буфер истории для каждого виртуального терминала и механизм копирования-вставки текста между окнами. При вызове screen создается единственное окно с Вашим шеллом в нем. Теперь Вы можете создавать новые окна (включая и шеллы), убивать их, перемещаться между ними, копировать и вставлять текст из одного окна в другое и тд. И самое главное - в любое время Вы можете отсоединиться от своего screen, а потом возобновить работу из другого места!!
 
Screen - полноэкранный консольный менеджер окон, делящий физический терминал на виртуальные. Имеется буфер истории для каждого виртуального терминала и механизм копирования-вставки текста между окнами. При вызове screen создается единственное окно с Вашим шеллом в нем. Теперь Вы можете создавать новые окна (включая и шеллы), убивать их, перемещаться между ними, копировать и вставлять текст из одного окна в другое и тд. И самое главное - в любое время Вы можете отсоединиться от своего screen, а потом возобновить работу из другого места!!
  
Строка 12: Строка 13:
 
Все, мы в screen ) Это наше первое окно. Все вводимые команды и сочетания клавиш будут переданы программе, запущенной в активном окне. Все, кроме управляющего сочетания клавиш (по умолчанию - Ctrl + a).
 
Все, мы в screen ) Это наше первое окно. Все вводимые команды и сочетания клавиш будут переданы программе, запущенной в активном окне. Все, кроме управляющего сочетания клавиш (по умолчанию - Ctrl + a).
  
Приведем самые часто употребляемые сочетания клавиш для управления screen:
+
==Часто употребляемые сочетания клавиш для управления screen:==
  
  
Строка 29: Строка 30:
 
</ul><br />
 
</ul><br />
 
Итак, потыркавшись минут 5, уже имеем общее представление о screen и начальные навыки работы с ним. Запоминаем комбинации клавиш.<br />
 
Итак, потыркавшись минут 5, уже имеем общее представление о screen и начальные навыки работы с ним. Запоминаем комбинации клавиш.<br />
 
  
 
Едем дальше:<br />
 
Едем дальше:<br />
Строка 42: Строка 42:
 
<li>C-a ] - вставить текст из буфера.</li>
 
<li>C-a ] - вставить текст из буфера.</li>
 
</ul><br />
 
</ul><br />
<br />
+
 
 
Все вроде разобрались. Теперь - самое интересное. <br />
 
Все вроде разобрались. Теперь - самое интересное. <br />
 
<br />
 
<br />

Текущая версия на 13:55, 14 ноября 2008

screen

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

Краткий очет об использовании screen.


Итак, начнем. Вводим в консоли

host@Spike:~$ screen

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

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

Часто употребляемые сочетания клавиш для управления screen:

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

Приведем самые часто употребляемые сочетания клавиш для управления screen:

  • C-a С-c (зажать ctrl, нажать a, отпустить всё, зажать ctrl, нажать с =)))) - создает новое окно с шеллом и переключается на него.
  • C-a A - обозвать окно по-своему. Удобно, когда окон много, называть окно по его содержимому. Например, hacking Necrosoft )
  • 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 от текущего терминала с возможностью последующего (а также множественного) подключения. <img src="images/smilies/cool.gif" border="0" alt="" title="Счастье" class="inlineimg" />

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

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

-ls - выдает список отсоединенных screen'ов.
-r pid.tty.host - подключиться к screen.
-d -m - запускает screen, однако не присоединяетего к текущему терминалу. Тоесть, к не му в последствии подключиться можно. Полезно для загрузочных скриптов.
-x - присоединиться к неотсоединенному screen - позволяет одновременно работать с разных мест разным людям. Удобно.
-wipe - тоже самое, что и -ls. однако мертвые сесси не указывает, как "destroyed", а уничтожает.
-U - запускает screen в режиме кодировки UTF-8.
-R - пытается присоединиться к первому найденному отсоединенному screen. Если не находит - создает новый Screen.

Взято с opensource.com.ua