1

Есть ли способ запустить сценарий Bash, а затем поставить в очередь другие сценарии bash, чтобы запустить его после завершения первого?

Для контекста. Я делаю обработку изображений, где мне нужно вручную поиграть с изображением и затем отправить его в утилиту командной строки, чтобы закончить. У меня есть только ресурсы для запуска 1 экземпляра утилиты (огромная нейронная сеть), но я все еще могу продолжать поиск и редактирование большего количества изображений, чтобы подать его позже. Я хотел бы быть в состоянии бросить работу в очередь, как только я закончу с ручной частью.

2 ответа2

2

Может быть, использовать GNU Parallel с -j1:

true >jobqueue; tail -n+0 -f jobqueue | parallel -j1

Добавить работу:

echo my_command my_arg >> jobqueue

Дополнительные параметры (например, запуск при добавлении нового файла в каталог) см .: https://www.gnu.org/software/parallel/man.html#EXAMPLE:-GNU-Parallel-as-queue-system- пакетный менеджер

0

Это может быть немного сложнее, чем вы хотите, но я буду стрелять.

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

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