Если вам когда-либо приходилось писать сложные скрипты на Bash, то вы наверняка думали о двух вещах:
- Никогда больше не писать сложные скрипты на Bash.
- Как отлаживать то, что уже написано?
Если с первым пунктом все понятно, то ответ на второй вопрос не так просто найти. Интегрированный среды для пошаговой отладки я не нашел (если не брать в расчет странный
BASH Debugger). Но способ получить трейс есть, также как и выполнить скрипт по шагам.
Получить трейс выполнения проще простого. Надо всего лишь запустить bash с параметром
-x. Либо в самом коде выполнить команду
set +x. Первый вариант выглядит предпочтительней, потому что вы извне контролируете — нужен вам подробный вывод или нет. Конечному пользователю такой вывод обычно не только не нужен, но и откровенно мешает.
Посмотрим, как это работает на практике.