screen -rd

Ответить
ya
^-^
Сообщения: 2336
Зарегистрирован: 16 дек 2021, 19:56

screen -rd

Сообщение ya »

Немножко кастомизации screen под вас

Когда screen запускается, он считывает свои конфигурационные параметры из /etc/screenrc и ~/.screenrc, если файл присутствует. Так вот - мы можем легко перенастроить предпочтения использования screen и сделать это в файле .screenrc.

Посмотрите пример с комментариями, как мы закастомили screen для себя:

# Выключаем приветствие
startup_message off

# включаем визуальный звонок
vbell off

# буфер для сохраненных строк делаем 10000
defscrollback 10000

# кастомим строку состояния
hardstatus alwayslastline
hardstatus string '%{= kG}[ %{G}%H %{g}][%= %{= kw}%?%-Lw%?%{r}(%{W}%n*%f%t%?(%u)%?%{r})%{w}%?%+Lw%?%?%= %{g}][%{B} %m-%d %{W}%c %{g}]'
ya
^-^
Сообщения: 2336
Зарегистрирован: 16 дек 2021, 19:56

Re: screen -rd

Сообщение ya »

С помощью screen также возможно запуск файла скрипта, который изначально будет отделён от терминала, например:
1

screen -d -m script.sh

Это запустит отделённый (независящий) от терминала процесс. Можно отделить любую команду или процесс с помощью программы screen.
ya
^-^
Сообщения: 2336
Зарегистрирован: 16 дек 2021, 19:56

Re: screen -rd

Сообщение ya »

Для запуска программ в фоновом режиме, не блокирующем окно терминала, необходимо использовать специальный оператор «&». Поставьте этот символ в самом конце строки после указания имени команды, опций и входящих параметров. В общем виде данную последовательность можно записать как «имякоманды —опция входящийпараметр &».

Если вам нужно перевести в фоновый режим уже работающую программу, нажмите сочетание клавиш Ctrl + Z. Это приостановит выполнение, покажет в терминале номер задания и приглашение к вводу новых команд. Подставьте полученный номер задания в качестве параметра команды bg, что переведет его в фон и автоматом запустит на выполнение. Также вы можете использовать следующую конструкцию «%[номер_задания] &». Она производит аналогичные действия.

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

Просмотр списка фоновых заданий
Если вы запустили несколько программ в фоне, может появиться потребность отслеживания их состояния. Для этого в Linux есть специальная команда jobs. Она выводит информацию обо всех заданиях, работающих в фоновом режиме, в следующем виде «[номерзадания] статусзадания командавведеннаяпри_запуске». Получить идентификаторы процессов можно добавив опцию -l.

Три основных статуса фоновых заданий:
Running — программа выполняется в настоящее время либо ожидает своей очереди. В общем, этот статус сигнализирует о нормальном выполнении фонового задания.
Sleeping — задание находится в состоянии ожидания какого-либо сигнала или освобождения определенного ресурса.
Zombie — выполнение данной фоновой задачи прекратилось, но она не высвободила те или иные ресурсы системы. Такой статус сигнализирует об ошибках выполнения и требует ручного уничтожения процесса.

Принудительное завершение заданий
Для завершения работы фоновой программы в Linux нужно использовать команду kill. Это может потребоваться, если задание выполняется слишком долго или оно имеет статус zombie. Команде kill необходимо передать идентификатор процесса, который можно увидеть с помощью jobs с указанием опции -l.

kill также принимает дополнительную опцию, указывающую на характер завершения фоновой задачи. Эта опция не имеет имени и записывается в виде числового значения. Такой вызов в общем виде записывается как** «kill -характер_завершения идентификатор_процесса».**
Ответить