CentOS 7.4 EPEL «Невозможно получить металик для репозитория: epel / x86_64» Ошибка

По умолчанию, Экран закрывается, когда выполняемая им команда закрывается, как вы заметили. Когда вы запускаете screen отдельно, команда, которую он запускает, представляет собой интерактивную оболочку, которая, конечно, не завершается, когда ее дочерние элементы делают это.

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

screen -dm -S myscreen
screen -S myscreen -X stuff "export VAR=123; cd /usr/local/myproject^M"
screen -S myscreen -X stuff "./myscript.py && exit^M"

Сначала запускается новый экран, в котором будет запущена оболочка входа в систему, и он не закроется, пока оболочка входа не завершится. Затем вы используете команду screen stuff для ввода текста в эту оболочку. В первой строке мы определяем переменные и меняем каталог. Во второй строке мы запускаем сценарий, а затем выходим из оболочки (предполагая, что вы хотите закрыть сеанс экрана, если сценарий завершится успешно). Однако из-за короткого замыкания и ( && ), если myscript.py выйдет из строя, выход никогда не произойдет, и вы сможете повторно подключитесь к сеансу экрана и посмотрите, что произошло.

Обратите внимание, что для правильного ввода ^ M вам нужно ввести ^ V (control-v), а затем ^ M (что то же самое в качестве клавиши ввода).

1
04.03.2019, 16:19
1 ответ

Репозитории debuginfoи sourceотключены (enabled=0), поэтому нет никакой разницы между изменением только репозитория epelили всех трех. Тем не менее, вам, вероятно, следует обновить все зеркальные списки / URL-адреса репозитория EPEL при обновлении одного из них на случай, если вам когда-нибудь понадобится включить какой-либо из этих репозиториев.

0
28.01.2020, 00:36

Теги

Похожие вопросы