Параметр отладки может быть установлен в произвольном месте в теле скрипта. Для отладки определенного блока кода, установим перед кодом set -x
, а для выхода из отладки при достижении конца отлаживаемого блока, обратим параметр вызвав set +x
.
Минус используется для активации опций оболочки, а плюс для деактивации. Пусть это вас не смущает.
Параметры которые вам скорее всего понадобятся для отладки:
set -f set -o noglob | Отключить получение имени файла с использованием метасимволов (подстановка). |
---|---|
set -v set -o verbose | Печатает строки ввода оболочки по мере их чтения. Листинг скрипта будет предварительно выводиться на экран перед командами. |
set -x set -o xtrace | Печатает трассировку команд перед выполнением команды. |
set -n set -o noexec | Не исполнять сценарий, а только проверить на наличие синтаксических ошибок. Проверка будет выполнена только для грубых ошибок, надежнее использовать shellchek. |
Также длинные параметры следующие за set -o могут быть переданы через переменную SHELLOPTS или используя родную для bash команду shopt.
В shopt включение или отключение опций происходит при помощи флагов:
-s
(set) - установить опцию;-u
(unset) - отключить опцию.Для того что бы отобразить текущие настройки параметров, выполните set -o или shopt