How to debug Linux Bash scripts with ShellCheck

Are you having trouble with a Bash script you wrote for your Linux PC? Instead of looking through countless threads on StackExchange for programming help, consider using the ShellCheck tool to debug Linux Bash scrips and automatically find mistakes in your code.

Get ShellCheck

ShellCheck is a useful tool, but it doesn’t come with your Linux operating system out of the box. Instead, if you’d like to use it, you’re going to have to install it first. In this tutorial, we’ll cover how to install ShellCheck from various official software sources. Also, we’ll also show you how to get the program working via the generic Linux binary.

Open up a terminal window and update your packages. Then, follow the instructions that correspond to your Linux operating system.

Ubuntu

ShellCheck is in the official Ubuntu software sources, so installing it is quite easy. In a terminal, use the Apt package manager and get the latest version of ShellCheck working.

sudo apt install shellcheck

Debian

Debian Stable has an older version of ShellCheck ready for users to install. Keep in mind that this version is held back due to how Debian does things.

Note: want a newer version of the ShellCheck program? Follow our guide and learn about how to get more modern software on Debian.

sudo apt-get install shellcheck

Arch Linux

To get ShellCheck on Arch Linux, you’ll first need to enable the “Community” software repository. Enabling “Community” requires editing the Pacman.conf file. To edit the file, open up Pacman.conf in Nano.

sudo nano /etc/pacman.conf

Scroll through (with the arrow keys) and find the “Community” section of the file. Remove all instances of the # symbol (about three lines). Then, save the edits by pressing the Ctrl + O button.

With the new edits to Pacman.conf taken care of, press Ctrl + X to close Nano. Then, resync Pacman to set up access to the Arch Linux “Community” repository.

sudo pacman -Syyuu

Finally, install ShellCheck to Arch Linux with:

sudo pacman -S shellcheck

Fedora

To get the ShellCheck script analysis tool on Fedora Linux, open up a terminal and use the DNF package management tool.

sudo dnf install ShellCheck

OpenSUSE

Installing ShellCheck on OpenSUSE requires no special steps, as it is in the distribution’s main software sources. To get it, enter the following Zypper package command in a terminal window.

sudo zypper install ShellCheck

Generic Linux

Users of lesser-known Linux distributions that want access to the ShellCheck script analysis tool must install the universal binary release. Luckily, this binary release is easy to install and requires no tinkering with source code. To get it working, follow the steps below!

Schritt 1:   Exportieren Sie die Version von ShellCheck, die Sie herunterladen möchten, in Ihre Terminalumgebung.

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

Schritt 2: Holen Sie sich mit dem wget- Download-Tool die neueste ShellCheck-Binärversion.

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

Schritt 3: Extrahieren Sie das ShellCheck TarXZ-Archiv mit dem  tar-  Befehl.

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

Schritt 4: Installieren Sie ShellCheck mit dem Befehl cp auf Ihrem Linux-PC .

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

Debuggen Sie Skripte mit ShellCheck

Der Hauptzweck von ShellCheck besteht darin, ein Skript (normalerweise Bash) zu überprüfen, missbrauchte Befehle zu erkennen und Korrekturen anzubieten. Gehen Sie für die grundlegende Verwendung wie folgt vor.

Zuerst CD , wo das Skript Sie überprüfen möchten , ist auf Ihrem Linux - PC. In diesem Tutorial befindet sich unser Skript in ~/shell-scripts . Ihre können davon abweichen.

cd ~/shell-scripts

Führen Sie den Befehl ls aus und zeigen Sie alle Dateien im aktuellen Verzeichnis an.

Hinweis: Wenn Sie ShellCheck in einem Verzeichnis mit mehreren Dateitypen verwenden möchten, empfiehlt es sich, grep  und  ls  zu kombinieren  . Wenn Sie diese beiden Befehle zusammen verwenden, können Sie alle Nicht-Skriptdateien herausfiltern.

ls

Oder kombinieren Sie mit grep , um nur Skriptdateien anzuzeigen.

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

Suchen Sie den Namen einer Skriptdatei in der ls- Eingabeaufforderung und markieren Sie den Dateinamen mit der Maus. Wenn Sie fertig sind, führen Sie es über ShellCheck aus und überprüfen Sie Ihren Code.

How to debug Linux Bash scripts with ShellCheck

Shellcheck Dateiname.sh

oder

Shellcheck Dateiname.bash

How to debug Linux Bash scripts with ShellCheck

Unmittelbar nach der Ausführung des Shellcheck- Befehls erkennt er Probleme mit Ihrem Code und fügt ihn in die Terminal-Eingabeaufforderung ein. Lesen Sie durch und erfahren Sie, wie Sie Ihre Programmierung verbessern können, indem Sie die darin enthaltenen Vorschläge befolgen.

ShellCheck-Bericht in einer Datei speichern

Einen sofortigen Bericht für Ihre Bash-Programmierung im Terminal zu erhalten, ist sehr nützlich, Sie können ihn jedoch verlieren, wenn Sie das Terminal schließen. Um den Verlust Ihres Shellcheck-Berichts zu umgehen, empfehlen wir, die Ausgabe in einer Textdatei zu speichern, indem Sie das Programm in Kombination mit der >>- Funktion im Terminal ausführen .

Shellcheck-Dateiname.sh >> ~/Documents/shellcheck-Bericht-Name-der-Datei.sh

oder

Shellcheck-Name-der-Datei.bash >> ~/Documents/shellcheck-Bericht-Name-der-Datei.bash

Zeigen Sie Ihren gespeicherten Bericht im Terminal über den Befehl cat an .

How to debug Linux Bash scripts with ShellCheck

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

oder

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

Leave a Comment

So klonen Sie eine Linux-Festplatte mit Gparted

So klonen Sie eine Linux-Festplatte mit Gparted

So klonen Sie eine Linux-Festplatte mit Gparted

So spielt man STALKER: Shadow of Chernobyl unter Linux

So spielt man STALKER: Shadow of Chernobyl unter Linux

STALKER: Shadow of Chernobyl ist ein Survival-Horror-FPS-Spiel, das von GSC Game World entwickelt und von THQ veröffentlicht wurde. In dieser Anleitung zeigen wir Ihnen, wie Sie es unter Linux zum Laufen bringen.

Linux: alle Benutzer auflisten [Guide]

Linux: alle Benutzer auflisten [Guide]

Unter Linux gibt es viele Tools, um Benutzer aufzulisten. Diese Anleitung zeigt Ihnen verschiedene Methoden, wie Sie alle Benutzer anzeigen können, inklusive versteckter Systembenutzer.

So integrieren Sie Thunderbird mit Tor unter Linux

So integrieren Sie Thunderbird mit Tor unter Linux

So integrieren Sie Thunderbird mit Tor unter Linux

So richten Sie die Qbittorrent-Webbenutzeroberfläche für Linux ein

So richten Sie die Qbittorrent-Webbenutzeroberfläche für Linux ein

Eine umfassende Anleitung zur Einrichtung der Qbittorrent-Webbenutzeroberfläche für Linux.

So erstellen Sie ein Linux-NAS mit Amahi

So erstellen Sie ein Linux-NAS mit Amahi

So erstellen Sie ein Linux-NAS mit Amahi

So organisieren Sie Fernsehsendungen und Filme unter Linux mit Tiny Media Manager

So organisieren Sie Fernsehsendungen und Filme unter Linux mit Tiny Media Manager

Tiny Media Manager ist eine ausgezeichnete Anwendung für Windows, Mac und Linux, mit der Benutzer TV-Sendungen und Filmdateien einfach verwalten können

So planen Sie das Herunterfahren unter Linux

So planen Sie das Herunterfahren unter Linux

So planen Sie das Herunterfahren unter Linux

So entfernen Sie defekte Grub-Boot-Einträge unter Linux

So entfernen Sie defekte Grub-Boot-Einträge unter Linux

Eine umfassende Anleitung zum Entfernen defekter Grub-Boot-Einträge unter Linux mit Grub Customizer.

So vergleichen Sie Ihre Festplatten unter Linux

So vergleichen Sie Ihre Festplatten unter Linux

Erfahren Sie, wie Sie die Lese- und Schreibgeschwindigkeit Ihrer Festplatten oder SSDs unter Linux mit Kdiskmark messen können. Installationsanleitungen und Testanleitung inklusive.