В Bash есть несколько способов увидеть команды, которые выполняются внутри скрипта. Это может быть полезно для отладки и понимания логики выполнения.
1️⃣ Включение режима отладки с
setДобавьте в начало скрипта строку:
set -x
Это включает режим трассировки, и Bash будет выводить команды перед их выполнением.
Чтобы отключить трассировку, используйте:
set +x
Пример:
#!/bin/bash
set -x # Включаем отладку
echo "Начало скрипта"
ls /etc
pwd
set +x # Отключаем отладку
echo "Конец скрипта"
2️⃣ Запуск скрипта с параметром
-xМожно включить отладку при запуске скрипта:
bash -x script.sh
Это аналогично
set -x, но без необходимости изменять сам скрипт.3️⃣ Использование
PS4Можно изменить переменную
PS4, чтобы видеть, например, время выполнения команд:
export PS4='+ $(date "+%T") '
set -x
Теперь трассировка будет включать метки времени.
4️⃣ Логирование вывода в файл
Если хотите записать трассировку в файл:
bash -x script.sh &> debug.log
Так весь вывод (и команды, и их результат) запишется в
debug.log.Эти методы помогут вам анализировать выполнение скриптов и находить ошибки! 🚀
👉@bash_srv