Найдите ошибки в ваших сценариях оболочки с помощью ShellCheck
Вы начинающий программист и только что написали простой сценарий оболочки. Вы хотели проверить, нет ли в нем ошибок, но не знаете как? Не беспокойся! Теперь вы можете легко находить ошибки в сценариях оболочки с помощью ShellCheck в Linux.
ShellCheck — это инструмент статического анализа сценариев оболочки. ShellCheck проанализирует сценарий оболочки и мгновенно покажет, есть ли в ваших сценариях ошибки. Он написан на языке Haskell и свободно распространяется под лицензией GPLv3.
ShellCheck проанализирует скрипт и выполнит следующее:
- Проверьте правильность цитирования,
- Проверьте наличие неправильных тестовых утверждений,
- Распознавать неправильные команды,
- Распознавать синтаксические ошибки,
- Предложить вам улучшить стиль сценария,
- Распознавать опечатки,
- Улучшите надежность вашего скрипта,
- И проверьте несколько других проблем.
Вам не нужна помощь специалиста для исправления ошибок в ваших скриптах. Просто откройте ShellCheck, вставьте свой скрипт и — бац! Вы можете использовать ShellCheck как онлайн, так и оффлайн. В этом кратком уроке я покажу вам оба!
ShellCheck в Интернете
Вы можете проверить сценарии онлайн в любой момент, посетив веб-сайт ShellCheck.
Откройте веб-браузер и перейдите по следующей ссылке.
Вставьте в него свой сценарий оболочки, чтобы получить мгновенную обратную связь.
Пример вывода:
Проверьте сценарии оболочки на веб-сайте ShellCheck.
Примечание. Я не писал сценарий, используемый в этом примере. Я только что нашел его в Интернете, чтобы протестировать ShellCheck.
Кроме того, вы можете установить его на свой компьютер Linux и протестировать свой скрипт в любое время в автономном режиме.
Установите ShellCheck в Linux
ShellCheck поставляется для большинства операционных систем Linux. Вы можете легко установить его с помощью менеджера пакетов вашего дистрибутива, как показано ниже.
В Arch Linux и его производных:
sudo pacman -S shellcheck
В Debian, Ubuntu, Linux Mint выполните следующую команду, чтобы установить его:
sudo apt-get install shellcheck
В RHEL CentOS включает репозиторий EPEL:
sudo yum -y install epel-release
И устанавливаем шеллчек:
sudo yum install ShellCheck
В системах Fedora:
sudo dnf install ShellCheck
В openSUSE (версия Tumbleweed) выполните следующую команду:
sudo zypper in ShellCheck
Информацию о других дистрибутивах можно найти на официальной странице установки.
Найдите ошибки в сценариях оболочки с помощью ShellCheck в Linux
После установки откройте Терминал и выполните следующую команду, чтобы протестировать ваши скрипты.
shellcheck <path_of_your_script>
Пример:
shellcheck myscript.sh
Пример вывода:
In myscript.sh line 1:
This script displays the date, time, username and
^-- SC2148: Tips depend on target shell and yours is unknown. Add a shebang.
In myscript.sh line 6:
echo "Your username is: `whoami` \\n"
^-- SC2006: Use $(..) instead of legacy `..`.
^-- SC2028: echo won't expand escape sequences. Consider printf.
Найдите ошибки в ваших сценариях оболочки с помощью ShellCheck
Как вы видите в приведенном выше выводе, ShellCheck отображает предложения в строке 1 и строке 6.
Помните, что ShellCheck не исправляет ошибки в скриптах автоматически. Вместо этого он будет выдавать предупреждения и предложения для ваших сценариев оболочки.
Утилита ShellCheck может быть полезна всем, кто хочет научиться написанию сценариев Shell. Просто напишите скрипт, скопируйте/вставьте код в ShellCheck и найдите ошибки. Это так просто!
Ресурсы:
- Веб-сайт ShellCheck
- ShellCheck на GitHub