11

Как эффективно использовать команду "экран"?
Это:

  1. Тип "экран"

  2. Введите команду

  3. Потерять связь

  4. Возвращайтесь на потерянную сессию

Как мне выполнить шаг 4?

9 ответов9

17

С экрана:

  1. screen
  2. введите command
  3. Ctrl - A - D, чтобы отсоединиться от экрана
  4. выход из сеанса
  5. screen -RD для повторного подключения к экрану (если их несколько, вы получите список текущих сеансов экрана и вам нужно будет указать номер сеанса) из нового сеанса

nohup: более простой метод, который полезен для команд, которые покидают файлы журналов или просто генерируют какой-либо соответствующий вывод и не нуждаются в интерактивности:

  1. nohup command > logfile &
  2. Выход из сеанса
  3. tail -f logfile из нового сеанса
4

Экран действительно мощный, и позволяет делать именно то, что вы просили.

Чтобы увидеть все ваши сессии, введите

screen -list

После того, как вы определили сеанс экрана для подключения, попробуйте

screen -dr SCREENID

который приятно отсоединит и повторно присоединит вашу сессию.

Вы также можете сделать менее приятно,

screen -D -R

который удаленно отсоединится и выйдет из системы, если потребуется, затем подключится заново или, если этот сеанс не существует, он создаст его и уведомит пользователя. Вы можете добавить «-t NAME», чтобы дать заголовкам или программам название.

На экране используйте

command-c

создать новое окно (поэтому вам не нужно 4000000 сеансов экрана для отключения и повторного подключения) и переключаться между ними с помощью

command-int

Индексирование от 0, конечно:P

Поскольку вы, кажется, немного незнакомы с экраном, я предполагаю, что вы могли бы использовать некоторую другую информацию. Мне нравятся следующие команды, например:

-e xy

Что заставляет x быть символом команды, а y - символом для генерации буквального символа команды. Значения по умолчанию: Ctrl-a и `a.

Здесь есть еще кое-что: Экран!Это то, что для программистов

2

screen -dr для отсоединения и возобновления предыдущего сеанса экрана.

2

Вот что я понял об использовании экрана (что я тоже только начал делать):

  • screen -S <name> создает экран с именем <name>. Это очень полезно, если вы хотите, чтобы несколько сеансов экрана происходили одновременно. Например, у меня есть один, который я использую обычно, и один, который я использую для своих постоянных процессов.
  • screen -ls показывает список запущенных экранов.
  • screen -r <name> возобновляет отдельный экран. Если экран где-то уже прикреплен, используйте screen -dr <name> .

Кроме того, когда вы начинаете использовать экран, всякий раз, когда вы планируете покинуть его, нажмите ^a d (= ctrl-a, а затем d), чтобы отсоединить экран, который вы в данный момент используете. Это может быть возобновлено позже.

Кроме того, я могу рекомендовать взглянуть на ^a ? для списка различных команд, которые вы можете использовать, находясь внутри экрана.

Наиболее важными из них (для меня) являются:

  • ^a c чтобы создать новое окно в вашем сеансе экрана.
  • ^a ^a для переключения между двумя последними использованными окнами.
  • ^a " для отображения текущих окон в вашем сеансе.
  • ^a Esc для прокрутки в вашем буфере экрана.
  • ^a k чтобы убить текущее окно.
  • ^a x чтобы заблокировать сеанс экрана, на случай, если вам нужно покинуть компьютер и не захотеть, чтобы люди с ним связывались.
1

Быстрый поиск в Google нашел это руководство

http://www.rackaid.com/resources/linux-tutorials/general-tutorials/using-screen/

Таким образом, на шаге б) вы можете отсоединить экран, используя:

"Ctrl - A" "d"

а затем позже, после того как соединение было потеряно, и ваш подключенный снова находит экран, используя:

# screen -ls

и затем присоедините, используя:

# screen -r <screen_session_name>

1

Вы также можете настроить свою среду для входа в систему и запуска экрана сразу. Есть много способов сделать это. Я решил добавить это в мой файл .bashrc.

# screen management
if [ $SSH_TTY ] && [ ! $WINDOW ]; then
  SCREENLIST=`screen -ls | grep 'Attached'`
  if [ $? -eq "0" ]; then
    echo -e "Screen is already running and attached:\n ${SCREENLIST}"
  else
    screen -U -R
  fi
fi
0

Шаг 4 "экран -r"

Если вы действительно сильно отключились, вам может потребоваться выполнить команду «screen -r -d», чтобы заставить его отключиться от старого сеанса ssh, который, по его мнению, все еще открыт.

0

Вы бы искали

screen -x
0
 For windows system

 Open putty 
 then login in server

Если вы хотите увидеть экран в консоли, то вам нужно написать команду

 Screen -ls

если вам нужен доступ к экрану, используйте команду ниже

 screen -x screen id

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .