Hur man felsöker Linux Bash-skript med ShellCheck

click fraud protection

Har du problem med en Bash-skript du skrev för din Linux-PC? Istället för att leta igenom otaliga trådar på StackExchange för programmeringshjälp, kan du överväga att använda ShellCheck-verktyget för att felsöka Linux Bash-skript och automatiskt hitta fel i din kod.

Skaffa ShellCheck

ShellCheck är ett användbart verktyg, men det kommer inte med ditt Linux-operativsystem ur lådan. Istället, om du vill använda det, måste du installera det först. I den här handledningen täcker vi hur du installerar ShellCheck från olika officiella programvarukällor. Vi visar också hur du får programmet att fungera via den generiska Linux-binären.

Öppna ett terminalfönster och uppdatera dina paket. Följ sedan instruktionerna som motsvarar ditt Linux-operativsystem.

Ubuntu

ShellCheck finns i de officiella Ubuntu-programvarukällorna, så det är ganska enkelt att installera det. Använd en Apt-pakethanterare i en terminal och få den senaste versionen av ShellCheck fungerar.

sudo apt installera skalcheck

Debian

Debian Stable har en äldre version av ShellCheck redo för användare att installera. Tänk på att den här versionen hålls tillbaka på grund av hur Debian gör saker.

instagram viewer

Obs: vill du ha en nyare version av ShellCheck-programmet? Följ vår guide och lära dig hur du får mer modern programvara på Debian.

sudo apt-get install shellcheck

Arch Linux

För att få ShellCheck på Arch Linux måste du först aktivera "Community" -programvaran. Att aktivera "Community" kräver att Pacman.conf-filen redigeras. För att redigera filen öppnar du Pacman.conf i Nano.

sudo nano /etc/pacman.conf

Bläddra igenom (med piltangenterna) och hitta "Community" -avsnittet i filen. Ta bort alla förekomster av symbolen # (cirka tre rader). Spara sedan redigeringarna genom att trycka på Ctrl + O knapp.

Med de nya ändringarna till Pacman.conf tagit hand om, tryck på Ctrl + X att stänga Nano. Sedan, synkronisera Pacman igen för att ställa in åtkomst till Arch Linux "Community" -förvaret.

sudo pacman -Syyuu

Slutligen installerar ShellCheck på Arch Linux med:

sudo pacman -S skalcheck

Fedora

För att få skriptanalysverktyget ShellCheck på Fedora Linux, öppna upp en terminal och använda DNF-pakethanteringsverktyget.

sudo dnf installera ShellCheck

OpenSUSE

Att installera ShellCheck på OpenSUSE kräver inga speciella steg, eftersom det finns i distributionens huvudsakliga programvarukällor. För att få det, ange följande Zypper-paketkommando i ett terminalfönster.

sudo zypper installera ShellCheck

Generisk Linux

Användare av mindre kända Linux-distributioner som vill ha åtkomst till ShellCheck-skriptanalysverktyget måste installera den universella binära versionen. Lyckligtvis är den här binära utgåvan lätt att installera och kräver ingen aning med källkoden. Följ stegen nedan för att få det att fungera!

Steg 1: exportera den version av ShellCheck du ska ladda ner till din terminalmiljö.

exportera scversion ="stabil"# eller "v0.4.7" eller "senaste"

Steg 2: använda wget nedladdningsverktyg, ta den senaste ShellCheck binära utgåvan.

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

Steg 3: extrahera ShellCheck TarXZ-arkivet med tjära kommando.

tjära --xz -xvf skalcheck-"$ {Scversion}".linux.x86_64.tar.xz

Steg 4: installera ShellCheck på din Linux-PC med cp kommando.

cp skalcheck-"$ {Scversion}"/ skalcheck / usr / bin /

Felsöka skript med ShellCheck

ShellChecks huvudsakliga syfte är att titta över ett skript (vanligtvis Bash), upptäcka missbrukade kommandon och erbjuda korrigeringar. För grundläggande användning gör du följande.

Först, CD där skriptet du vill kontrollera finns på din Linux-dator. I denna handledning finns vårt skript i ~ / Shell-scripts. Dina kan variera.

cd ~ / skal-skript

Springa det ls kommando och visa alla filer i den aktuella katalogen.

Obs! Om du tänker använda ShellCheck i en katalog med flera filtyper är det en bra idé att kombinera grep och ls tillsammans. Om du använder dessa två kommandon tillsammans kan du filtrera bort alla icke-skriptfiler.

ls

Eller kombinera med grep för att bara visa skriptfiler.

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

Hitta namnet på en skriptfil i ls fråga och markera filnamnet med musen. Kör den genom ShellCheck när du är redo och kontrollera din kod.

skalcheck name-of-file.sh

eller

skalcheck name-of-file.bash

Omedelbart efter shellcheck kommandot körs, kommer det att upptäcka problem med din kod och sätta den i terminalprompt. Läs igenom och lära dig hur du kan förbättra din programmering genom att följa de förslag som den ger dig.

Spara ShellCheck-rapport i en fil

Att få en omedelbar rapport i terminalen för din bash-programmering är mycket användbart men du kan tappa den om du stänger terminalen. Vi rekommenderar att du sparar outputen i en textfil genom att köra programmet i kombination med >> funktion i terminalen.

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

eller

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

Visa din sparade rapport i terminalen via katt kommando.

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

eller

cat ~ / Documents / shellcheck-report-name-of-file.bash | Mer
watch instagram story