Как отправить скрипт T-SQL

Вы можете «поймать» ошибку, используя ||, и команда, которая должна выйти из состояния 0:

ls $PATH || echo "$PATH does not exist"

Поскольку сложная команда преуспевает, существует или нет $PATH, set -e не запускается, и ваш скрипт не выйдет.

Чтобы подавить ошибку беззвучно, вы можете использовать команду true:

ls $PATH || true

Чтобы выполнить несколько команд, вы можете использовать одна из составных команд:

ls $PATH || { command1; command2; }

или

ls $PATH || ( command1; command2 )

Просто убедитесь, что ничего не происходит внутри любой из составных команд. Одним из преимуществ второго примера является то, что вы можете отключить режим немедленного выхода внутри подоболочки, не влияя на его статус в текущей оболочке:

ls $PATH || ( set +e; do-something-that-might-fail )
0
задан a_horse_with_no_name 17 January 2019 в 15:51
поделиться