В bash на самом деле нет try/catch
(я предполагаю, что вы используете bash), но вы можете добиться довольно похожего поведения, используя &&
или ||
.
В этом примеревы хотите запустить fallback_command
, если a_command
потерпит неудачу (возвращает ненулевое значение):
a_command || fallback_command
И в этом примере вы хотите выполнить second_command
, если a_command
успешно (возвращает 0):
a_command && second_command
Их можно легко смешать вместе с помощью подоболочки, например, следующая команда выполнит a_command
, если это удастсязатем он запустит other_command
, но если a_command
или other_command
не удастся, будет выполнено fallback_command
:
(a_command && other_command) || fallback_command