Знайте, содержит ли сценарий оболочки ошибку синтаксиса без запуска сценария

21

У меня есть длинный сценарий оболочки, содержащий множество условий, и я хочу знать, есть ли какая-либо синтаксическая ошибка в сценарии без его запуска.

Поскольку сценарий оболочки интерпретируется, я думаю, что это невозможно, но есть ли способ узнать с помощью некоторого трюка.

Анкит Залани
источник

Ответы:

29
bash -n scriptname

Хотя это будет проверять синтаксис, а не доступность команд. (не предупредит, если скрипт использует команду, которая еще не установлена)

Бодо
источник
3
В дополнение к bashвстроенной проверке синтаксиса вы можете использовать проверку оболочки для выявления менее серьезных проблем и плохих практик.
Glutanimate
4

Я нашел онлайн-инструмент для проверки синтаксиса скрипта. В дополнение к проверке сценария, также предлагаются возможные исправления, чтобы избежать ошибок.

Проверьте скрипт оболочки онлайн

Girardengo
источник