Запустите команду параллельно и завершите ее, если какая-либо команда завершится неудачно с использованием wait - PullRequest
0 голосов
/ 30 октября 2018

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

Но я использую очень минимальный образ виртуальной машины и поэтому не могу использовать parallel.

Так возможно ли параллельное выполнение команд и возврат существующего состояния, если какая-либо из команд не выполнена в пакете?

Ex.

(npm install --global bower ng-cli) & (cd $1 npm install) & (cd $2 bower install); wait

В приведенной выше команде, если вторая команда завершится неудачно, она должна вернуть состояние выхода из строя.

Пожалуйста, дайте мне знать, если я должен предоставить больше информации.

(В худшем случае), если кто-то может помочь мне преобразовать указанную выше команду в параллельную, что также будет полезно.

1 Ответ

0 голосов
/ 30 октября 2018

Использование GNU Parallel:

parallel --halt now,fail=1 ::: \
  "npm install --global bower ng-cli" \
  "cd $1 npm install" \
  "cd $2 bower install" && echo All is OK

Он вернется с ошибкой, как только произойдет сбой одного из заданий.

...