ГлавнаяОперационные системыLinuxКак работать в многозадачном режиме в терминале Linux с экраном

Как работать в многозадачном режиме в терминале Linux с экраном

Многие люди не знают об экране, отличном маленьком инструменте или «терминальном мультиплексоре», если вам нужны технические подробности. Я твердо верю, что каждый, кто пользуется терминалом, по какой-либо причине, должен иметь его в своем арсенале. Это оченьполезно.

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

Если вы выполняете множество задач в терминале каждый день, значит, вы либо уже им пользуетесь, либо вам он понравится после того, как вы его попробуете!

Экран установки

Screen доступен практически для каждого дистрибутива на свете — поскольку это старое, проверенное и проверенное, хотя и несколько неизвестное, маленькое сокровище. Чтобы установить его на Debian, Ubuntu, Mint или на любую другую систему, использующую apt, используйте:

sudo apt install screen

Через несколько секунд вы будете готовы к работе, поскольку он небольшой и не требует большого количества зависимостей.

Contents

Экран установки

гозадачности Screen Terminal">

Первый сеанс

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

Чтобы использовать его, просто добавьте его перед всем, что вы вводите в терминал. В качестве примера создадим документ в популярном редакторе nano. Если он не установлен, доступен в вашем дистрибутиве или вы предпочитаете что-то другое, замените «nano» на ваш выбор.

screen nano mte_screen.txt

Добавив «screen» перед обычной командой, мы запустили ее в одном из сеансов screen. Может показаться, что это не принесло никакого результата, но, как мы увидим на следующем шаге, так оно и было.

Экранный терминал, многозадачность, 1-й сеанс

Отключиться от сеанса

Введите что-нибудь в nano и нажмите CtrlПервый сеансзатем Dна клавиатуре. Nano º или любой другой редактор, который вы использовали – исчезнет. В терминале вы увидите сообщение, подобное:

[detached from terminal-ID]

Теперь вы вернулись к тому, что можно было бы назвать стартовым терминалом, откуда вы раньше запускали screen. Но ваша сессия с nano не закончилась.

Экранный терминал, многозадачность, отключение

Вернуться к текущему сеансу

Поскольку у вас есть сеанс, работающий в фоновом режиме, вы можете вернуться к нему, введя:

screen -r

Нажав Enter, вы окажетесь там, где остановились в nano. Вы можете отсоединять и прикреплять экран столько раз, сколько захотите. Но это всего лишь одно приложение, работающее в фоновом режиме, что далеко от того, что можно назвать настоящей многозадачностью.

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

Создать второй сеанс

Вернувшись к исходному терминалу и отключившись от текущего сеанса nano, повторите первый шаг, чтобы запустить что-то во втором сеансе. Для простоты мы создали второй документ с помощью nano, используя:

screen nano mte_2nd.txt

Однако Screen не ограничивается запуском нескольких сеансов одного и того же приложения: попробуйте запустить с его помощью ч

Отключиться от сеанса

вою полезность при использовании для чего-то вроде сжатие множества файлов в архив с помощью 7z — процесса, который занимает некоторое время. Вместо того, чтобы смотреть на терминал в ожидании завершения 7z, вы можете отключить его сеанс и позволить ему работать в фоновом режиме.

Экранный терминал, многозадачность, 2-й сеанс

Список сеансов

Если вы выполнили наши предыдущие шаги, теперь у вас есть два сеанса с экраном. screen -rне будет работать так, как раньше, поскольку не будет знать, куда прикрепить. Если у вас несколько сеансов, чтобы вернуться к одному из них, сначала необходимо узнать его идентификатор. Чтобы найти его, в

Вернуться к текущему сеансу

/span> -list

На экране отобразится список всех доступных сеансов.

Список сеансов многозадачности Screen Terminal

В нашем случае, как вы можете видеть на скриншоте, чтобы вернуться к любому сеансу, нам нужно будет ввести:

screen -r 14384

или

screen -r 14336

Полезные дополнения

Если вы запустите задачу, которая завершается после завершения с помощью screen, сеанс screen завершится вместе с ней. Вот почему вы могли запускать некоторые задачи в сеансах экрана, но теперь активные сеансы не отображаются. Тем временем задачи могли бы достичь своих целей.

Если вы хотите, чтобы в таких случаях сеанс оставался активным,

Создать второй сеанс

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

Экран также позволяет создать новый сеанс из существующего. Просто нажмите комбинацию команд Ctrl+ A, а затем нажмите C, чтобы создать новый экран и перейти к нему.

Для других полезных команд, которые вы, вероятно, в конечном итоге будете использовать, нажмите Ctrl+ A, а затем:

  • Aдля ввода названия сеанса для облегчения распознавания и управления.
  • K, чтобы завершить текущий сеанс
  • Nили Pдля перехода к следующему или предыдущему активному сеансу
  • От

  • 0до 9для перемещения между первыми десятью активными сеансами

Не только для жонглирования задачами

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

Экранный терминал Многозадачность Несколько терминалов

А это означает, что вы можете повторно подключиться к работающему сеансу с другого терминала. Как вы можете видеть на нашем скриншоте, мы использовали Guake для повторного

Список сеансов

оторый мы создали в терминале Mint по умолчанию.

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

Как это относится к «многозадачности»?

Полезные дополнения

Не только для жонглирования задачами

ПОХОЖИЕ СТАТЬИ

Популярные записи