Haben Sie Probleme mit einem Bash-Skript, das Sie für Ihren Linux-PC geschrieben haben? Anstatt durch unzählige Threads in StackExchange nach Programmierhilfen zu suchen, sollten Sie das ShellCheck-Tool verwenden, um Linux-Bash-Scripts zu debuggen und automatisch Fehler in Ihrem Code zu finden.

Holen Sie sich ShellCheck

ShellCheck ist ein nützliches Tool, das jedoch nicht mit Ihrem Linux-Betriebssystem geliefert wird. Wenn Sie es jedoch verwenden möchten, müssen Sie es zuerst installieren. In diesem Lernprogramm erfahren Sie, wie Sie ShellCheck von verschiedenen offiziellen Softwarequellen installieren. Außerdem zeigen wir Ihnen, wie Sie das Programm über die generische Linux-Binärdatei ausführen können.

Öffnen Sie ein Terminalfenster und aktualisieren Sie Ihre Pakete. Folgen Sie dann den Anweisungen, die Ihrem Linux-Betriebssystem entsprechen.

Ubuntu

ShellCheck ist in den offiziellen Ubuntu-Software-Quellen enthalten, so dass die Installation ziemlich einfach ist. Verwenden Sie in einem Terminal den Apt-Paketmanager, und laden Sie die neueste Version von ShellCheck herunter.

sudo apt install shellcheck

Debian

Debian Stable stellt eine ältere Version von ShellCheck bereit, die Benutzer installieren können. Bedenken Sie, dass diese Version aufgrund der Art und Weise, wie Debian etwas tut, zurückgehalten wird.

Hinweis: Sie möchten eine neuere Version des ShellCheck-Programms? Folgen Sie unserem Leitfaden und erfahren Sie, wie Sie unter Debian modernere Software erhalten.

sudo apt-get install shellcheck

Arch Linux

Um ShellCheck unter Arch Linux zu erhalten, müssen Sie zunächst das "Community" -Software-Repository aktivieren. Zum Aktivieren von "Community" muss die Pacman.conf-Datei bearbeitet werden. Öffnen Sie zum Bearbeiten der Datei die Datei Pacman.conf in Nano.

sudo nano /etc/pacman.conf

Blättern Sie durch (mit den Pfeiltasten) und suchen Sie den Abschnitt "Community" der Datei. Entfernen Sie alle Vorkommen des Symbols # (etwa drei Zeilen). Speichern Sie dann die Änderungen, indem Sie auf drücken Strg + O Taste.

Nachdem Sie die neuen Änderungen an Pacman.conf vorgenommen haben, drücken Sie Strg + X um Nano zu schließen. Dann synchronisieren Sie Pacman erneut, um den Zugriff auf das Arch Linux-Community-Repository einzurichten.

Sudo Pacman -Syyuu

Zum Schluss installieren Sie ShellCheck in Arch Linux mit:

Sudo Pacman -S Shellcheck

Fedora

Um das ShellCheck-Skriptanalysetool unter Fedora Linux zu erhalten, öffnen Sie ein Terminal und verwenden Sie das DNF-Paketverwaltungstool.

Sudo dnf installieren Sie ShellCheck

OpenSUSE

Die Installation von ShellCheck unter OpenSUSE erfordert keine besonderen Schritte, da es sich in den wichtigsten Softwarequellen der Distribution befindet. Um es zu erhalten, geben Sie den folgenden Zypper-Paketbefehl in ein Terminalfenster ein.

Sudo Zypper installieren Sie ShellCheck

Generisches Linux

Benutzer von weniger bekannten Linux-Distributionen, die Zugriff auf das ShellCheck-Skriptanalysetool wünschen, müssen die universelle Binärversion installieren. Glücklicherweise ist diese binäre Version einfach zu installieren und erfordert kein Nachdenken mit dem Quellcode. Damit es funktioniert, folgen Sie den nachstehenden Schritten!

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

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

Schritt 2: Verwendung der wget Download-Tool, holen Sie sich die neueste ShellCheck-Version.

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

Schritt 3: Extrahieren Sie das ShellCheck TarXZ-Archiv mit derTeerBefehl.

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

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

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

Debug-Skripte mit ShellCheck

Der Hauptzweck von ShellCheck besteht darin, ein Skript (normalerweise Bash) zu überprüfen, missbrauchte Befehle zu erkennen und Korrekturen anzubieten. Führen Sie für die grundlegende Verwendung Folgendes aus.

Zuerst, CD wo sich das zu überprüfende Skript auf Ihrem Linux-PC befindet. In diesem Tutorial finden Sie unser Skript in ~ / Shell-Skripte. Ihre können sich unterscheiden.

CD ~ / Shell-Skripte

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

Hinweis: Wenn Sie ShellCheck in einem Verzeichnis mit mehreren Dateitypen verwenden möchten, sollten Sie dies kombinierengrepundlszusammen. Wenn Sie diese beiden Befehle zusammen verwenden, können Sie alle Nicht-Skript-Dateien herausfiltern.

ls

Oder mit kombinieren 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 durch ShellCheck aus und überprüfen Sie Ihren Code.

shellcheck name-of-file.sh

oder

shellcheck Dateiname.bash

Gleich nach dem Shellcheck Wenn der Befehl ausgeführt wird, werden Probleme mit Ihrem Code erkannt und in die Terminal-Eingabeaufforderung eingefügt. Lesen Sie durch und lernen Sie, wie Sie Ihre Programmierung verbessern können, indem Sie die Vorschläge befolgen, die Sie erhalten.

Speichern Sie den ShellCheck-Bericht in einer Datei

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

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

oder

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

Zeigen Sie Ihren gespeicherten Bericht im Terminal an Katze Befehl.

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

oder

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

Arbeitete Für Sie: Robert Gaines & George Fleming | Möchten Sie Uns Kontaktieren?

Kommentare Auf Der Website: