Како отклонити грешке у Линук Басх скриптама помоћу СхеллЦхецк-а

Да ли сте се икада нашли у ситуацији да се борите са Басх скриптом коју сте креирали за свој Линук систем? Уместо да трошите сате тражећи помоћ на разним форумима, размислите о коришћењу СхеллЦхецк-а. Овај алат је специјализован за детекцију грешака у Линук Басх скриптама, чинећи процес отклањања проблема бржим и ефикаснијим.

Инсталирање СхеллЦхецк-а

СхеллЦхецк није подразумевано инсталиран на већини Линук дистрибуција. Стога, ако желите да га користите, прво ћете морати да га инсталирате. У овом упутству ћемо проћи кроз процес инсталације СхеллЦхецк-а користећи различите званичне изворе софтвера. Такође ћемо објаснити како покренути програм путем универзалног Линук бинарног пакета.

Отворите терминал и ажурирајте листу пакета. Затим следите упутства која одговарају вашој дистрибуцији Линукса.

Убунту

СхеллЦхецк се налази у званичним спремиштима Убунту софтвера, што инсталацију чини веома једноставном. У терминалу користите Апт менаџер пакета да бисте инсталирали најновију верзију СхеллЦхецк-а.

sudo apt install shellcheck

Дебиан

Дебиан Стабле нуди старију верзију СхеллЦхецк-а. Важно је напоменути да је ова верзија доступна због политике одржавања стабилности Дебиана.

Напомена: Ако желите да користите новију верзију СхеллЦхецк-а, погледајте наш водич о томе како да инсталирате савременији софтвер на Дебиану.

sudo apt-get install shellcheck

Арцх Линук

Да бисте инсталирали СхеллЦхецк на Арцх Линук-у, прво морате да омогућите „Цоммунити“ спремиште софтвера. За то је потребно уредити `pacman.conf` датотеку. Отворите ову датотеку у Нано уређивачу.

sudo nano /etc/pacman.conf

Користите тастере са стрелицама да пронађете секцију „Цоммунити“. Уклоните све симболе # (који се обично налазе на око три реда). Сачувајте измене притиском на Цтрл + О.

Након што сте сачували измене, затворите Нано помоћу Цтрл + Кс. Затим синхронизујте Пацман да бисте омогућили приступ „Цоммунити“ спремишту.

sudo pacman -Syyuu

Сада можете да инсталирате СхеллЦхецк на Арцх Линук помоћу следеће команде:

sudo pacman -S shellcheck

Федора

За инсталацију СхеллЦхецк-а на Федора Линук, отворите терминал и користите ДНФ менаџер пакета.

sudo dnf install ShellCheck

ОпенСУСЕ

Инсталација СхеллЦхецк-а на ОпенСУСЕ је једноставна, јер је доступна у главним спремиштима дистрибуције. Користите следећу Зиппер команду у терминалу:

sudo zypper install ShellCheck

Генерички Линукс

Корисници мање познатих Линук дистрибуција који желе да користе СхеллЦхецк морају инсталирати универзално бинарно издање. Ово издање је релативно једноставно за инсталацију и не захтева компилацију из изворног кода. Следите ове кораке:

Корак 1: Дефинишите верзију СхеллЦхецк-а коју желите да преузмете.

export scversion="stable" # or "v0.4.7", or "latest"

Корак 2: Користите `wget` за преузимање најновијег бинарног издања СхеллЦхецк-а.

wget "https://storage.googleapis.com/shellcheck/shellcheck-${scversion}.linux.x86_64.tar.xz"

Корак 3: Распакујте ТарКСЗ архиву користећи команду `tar`.

tar --xz -xvf shellcheck-"${scversion}".linux.x86_64.tar.xz

Корак 4: Инсталирајте СхеллЦхецк копирањем извршне датотеке у `/usr/bin/`.

cp shellcheck-"${scversion}"/shellcheck /usr/bin/

Дебаговање скрипти помоћу СхеллЦхецк-а

Главна функција СхеллЦхецк-а је анализа скрипти, обично Басх, идентификација проблематичних команди и предлог решења. Основна употреба је следећа:

Прво, пређите у директоријум где се налази скрипта коју желите да анализирате. У овом примеру, скрипта се налази у `~/shell-scripts`. Ваша локација може бити другачија.

cd ~/shell-scripts

Користите команду `ls` да видите све датотеке у тренутном директоријуму.

Напомена: Ако користите СхеллЦхецк у директоријуму који садржи више врста датотека, препоручује се да комбинујете `grep` и `ls`. Ова комбинација вам омогућава да филтрирате датотеке које нису скрипте.

ls

Или комбинујте са grep да бисте видели само датотеке скрипте.

ls | grep ".sh"
ls | grep ".bash"

Изаберите име датотеке скрипте коју желите да анализирате. Затим покрените СхеллЦхецк да бисте извршили анализу кода.

shellcheck name-of-file.sh

или

shellcheck name-of-file.bash

Након покретања команде, СхеллЦхецк ће приказати проблеме у коду у терминалу. Пажљиво прочитајте сугестије које се појављују да бисте побољшали свој код.

Чување извештаја СхеллЦхецк-а у датотеку

Добијање тренутног извештаја у терминалу је веома корисно, али ако затворите терминал, изгубићете извештај. Да бисте то избегли, препоручује се да сачувате излаз у текстуалну датотеку користећи функцију `>>` у терминалу.

shellcheck name-of-file.sh >> ~/Documents/shellcheck-report-name-of-file.sh

или

shellcheck name-of-file.bash >> ~/Documents/shellcheck-report-name-of-file.bash

Сада можете прегледати сачувани извештај помоћу команде `cat`.

cat ~/Documents/shellcheck-report-name-of-file.sh | more

или

cat ~/Documents/shellcheck-report-name-of-file.bash | more