🐚 Если вам приходится ковырять и писать скрипты на bash, порой хочется иметь под рукой какой-нибудь линтер. Чтобы уж слишком в говнокод не скатываться.



И такой линтер есть, называется shellcheck. С помощью него можно производить статический анализ кода и повышать качество ваших замечательных скриптов. Написан этот линтер на Haskell.



Haskell — стандартизированный чистый функциональный язык программирования общего назначения. Является одним из самых распространённых языков программирования с поддержкой отложенных вычислений.



С помощью этого линтера вы сможете искать ошибки в текстах скриптов и получать отчеты о проведенных проверках. Это позволяет повысить производительность работы и качество кода.



Установка элементарная:



apt/yum/brew install shellcheck



А использование этого линтера, вообще максимально простое:



shellcheck script.sh



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



Что еще сказать, этот линтер можно прикрутить в vim. Достаточно установить из репозитория плагин Plug 'neomake/neomake’. А в VSCode так и называется shellcheck.



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