Поиск в Google по запросу "экран сценариев" дает this в качестве первого результата.Похоже, вы можете создавать именованные сеансы экрана с screen -d -m -S nameOfSession
.Затем screen -X -S <session name> screen
создаст окно в сеансе экрана «nameOfSession».Вы можете связаться с этим окном 1 (то есть дать команды для запуска этого окна сеанса экрана 1), используя
screen -X -S test -p 1 stuff "your command here ^M"
"your_command_here" - это команда, которую вы хотите выполнить.^M
является управляющим символом возврата каретки (вы нажимаете Ctrl-V, затем вводите / возвращаете в терминале).^ M, по сути, «нажимает возврат / ввод», так что команда запускается в этом сеансе экрана.Поиграйте с ним.
Поскольку вы хотите дождаться окончания выполнения ваших команд, я бы предложил разветвить процессы через амперсанд:
your_command &
Сразу после этого идентификатор процессаразветвленный процесс в $ !.Вы можете дождаться завершения всех фоновых процессов, запустив wait
.
Я бы предложил справочник по экрану .