Если команда cd
в этом скрипте не работает, это может привести к катастрофе:
cd $HOME/el-directorio
rm -rf algo
Вы можете использовать if для проверки, но когда скрипт имеет десятки команд, это дорого и подвержено ошибкам, когда приходится каждый раз проверять.
Как заставить скрипт bash останавливаться при любой ошибке?
Это приводит к остановке сценария, если какая-либо команда возвращает ненулевой код выхода.
Есть некоторые исключения:
Чтобы вернуть bash к нормальному поведению:
Его
set -e
также можно активировать с помощью параметра при вызове bash:С помощью команды exit сценарий оболочки завершается в любое время. Например, включите в свой код следующее:
exit 1
1 указывает на общую ошибку. Есть и другие более конкретные индикаторы ошибок:
Для вашего конкретного примера я бы сначала проверил, существует ли каталог: