bash debugging

bash debugging


Параметр отладки может быть установлен в произвольном месте в теле скрипта. Для отладки определенного блока кода, установим перед кодом 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

Содержание