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

Приведем самые часто употребляемые сочетания клавиш для управления 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 <Номер> переключается на окно с номером <Номер>
  • 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 от текущего терминала с возможностью последующего (а также множественного) подключения.
Параметры запуска screen:

-ls - выдает список отсоединенных screen'ов.
-r pid.tty.host - подключиться к screen.
-d -m - запускает screen, однако не присоединяетего к текущему терминалу. Тоесть, к не му в последствии подключиться можно. Полезно для загрузочных скриптов.
-x - присоединиться к неотсоединенному screen - позволяет одновременно работать с разных мест разным людям. Удобно.
-wipe - тоже самое, что и -ls. однако мертвые сесси не указывает, как "destroyed", а уничтожает.
-U - запускает screen в режиме кодировки UTF-8.
-R - пытается присоединиться к первому найденному отсоединенному screen. Если не находит - создает новый Screen.
03.03.2009 16:45
Звонит Дэвид, высокопоставленный пользователь из отдела разработки: «Мне нужна ваша помощь, я не могу понять, почему не получается откомпилировать supercode.c на новых машинах, установленных вами». «Отлично», —говорите вы, «На какой машине»?
Дэвид отвечает: «Posh». (Да, эта вымышленная компания дала пяти своим промышленным серверам имена девушек из группы Spice Girls). «ОК»,—говорите вы. Вы реализуете свои суперправа администратора и становитесь Дэвидом на другой машине:
# su - david
Затем вы заходите на Posh:
# ssh posh
Оказавшись там, выполняете команду:
# screen -S foo
Затем говорите Дэвиду: «Запусти-ка на своем терминале следующую команду»: # screen -x foo."
Это приведет к объединению ваших с Дэвидом сессий в священной командной оболочке Linux. И вы, и Дэвид можете вводить команды, и вы оба будете видеть, что происходит. Это экономит время, позволяет не бегать с этажа на этаж и дает вам обоим возможность одинаково контролировать сеанс. Польза тут в том, что Дэвид увидит ваши познания в области устранения проблем, и увидит, как вы их устраняете.
Наконец, вам обоим становится ясно, в чем проблема: сборочный скрипт Дэвида жёстко привязан к старой директории, которой больше не существует на новом сервере. Вы монтируете директорию, перекомпилируете, решаете проблему, и Дэвид возвращается к работе. А вы—к своему ленивому времяпровождению.
Единственное замечание для этого фокуса: вы оба должны зарегистрироваться в системе под одним и тем же пользователем. В screen можно проделывать еще много замечательных вещей: создавать несколько окон сессий, разделять экран. За подробной информацией обратитесь к руководству man.
Пока вы находитесь в сессии screen , я дам ещё один совет. Чтобы выйти из неё, оставив её открытой, введите Ctrl-A D (то есть нажмите клавишу Ctrl и нажмите на клавишу A. Затем нажмите на клавишу D).
Вы можете повторно зайти в сессию, набрав команду screen -x foo.
Часовой пояс GMT +3, время: 10:23.

Форум на базе vBulletin®
Copyright © Jelsoft Enterprises Ltd.
В случае заимствования информации гипертекстовая индексируемая ссылка на Форум обязательна.