Существует ли пакет Windows, эквивалентный команде bash set -e
, которая заставляет оболочку немедленно завершать работу, если команда завершается неудачно с ненулевым состоянием выхода (кроме тех мест, где это ожидается, как в операторе if
)? Я устаю ставить, if errorlevel 1 exit 1
после каждой строки.
5
1 ответ
1
Чтобы указать более одной команды в строке командной строки, используя символ амперсанда в качестве разделителя команд:
dir & pause
Для условного выполнения вашей команды используются два других разделителя команд. Если вы разделяете две команды, используя двойной амперсанд (&&), то вторая команда будет выполнена, только если первая команда будет выполнена успешно:
dir && pause
Если вы используете двойную черту (||) в качестве разделителя команд, то вторая команда будет выполнена только в случае сбоя первой команды:
dir Nonsensual-mix || pause
Поэтому вы можете использовать следующее:
your_command || exit 1