Bash-Skripte prüfen lassen

Bash-Skripte prüfen lassen
18.03.2014 12:31

Wer häufiger Shell-Skripte schreibt, kann diese nicht nur auf Syntaxfehler prüfen lassen. Spezielle Werkzeuge mahnen problematische Stellen an und zeigen auf, wie gut sich das Shell-Skript portieren lässt.

Auf Wunsch prüft bereits die Bash ein neu geschriebenes Skript auf Syntaxfehler. Dazu ruft man das Skript wie folgt auf:

bash -n skript.sh

Des Weiteren färben viele Editoren die verschiedenen Bestandteile und Schlüsselwörter des Skriptes ein. Dieses Syntaxhighlighting sollte man unbedingt einschalten, da man mit ihm schon während der Programmierung schnell Tippfehler findet.

Einen Schritt weiter gehen sogenannte Code-Analyse-Werkzeuge. Sie analysieren ein Skript und prangern neben Fehlern auch problematische Konstrukte an. Eine solche Code-Analyse bietet ShellCheck für Shell-Skripte. Man muss lediglich den Code seines eigenen Bash-Skripts in das Eingabefeld auf der Homepage einfügen und den blauen Pfeil anklicken. Im unteren Teil der Seite erscheint dann eine Liste mit allen Mängeln. Alternativ kann man sich ShellCheck auch als Programm auf dem eigenen Rechner ausführen.

ShellCheck klopft ein Skript auf problematische Stellen ab.

Abschließend verrät das Werkzeug Shlint noch, ob ein Skript portabel ist. Shlint ist in Ruby geschrieben. Zu seiner Installation muss man deshalb zunächst über den Paketmanager Ruby installieren (unter Ubuntu im Paket ruby). Anschließend spielt der Befehl:

sudo gem install shlint

das kleine Werkzeug ein. Anschließend setzt man Shlint auf das entsprechende Skript an:

shlint test.sh

Weitere Tipps zur Shell-Programmierung und gegen wirren Spaghetticode hält der Schwerpunkt des LinuxUser 03/2014 bereit.


Kommentare

Aktuelle Fragen

WLAN lässt sich nicht einrichten
Werner Hahn, 21.03.2017 14:16, 0 Antworten
Dell Latitude E6510, Ubuntu 16.4, Kabelbox von Telecolumbus. Nach Anklicken des Doppelpfeiles (o...
"Mit Gwenview importieren" funktioniert seit openSuse 42.2 nicht mehr
Wimpy *, 20.03.2017 13:34, 2 Antworten
Bisher konnte ich von Digitalkamera oder SD-Karte oder USB-Stick Fotos mit Gwenview importieren....
Ich habe eine awk Aufgabe und bekomme es nicht so Recht hin
Dennis Hamacher, 10.03.2017 18:27, 1 Antworten
Ich hoffe Ihr könnt mir dabei helfen oder mir zeigen wie der Befehl richtig geschrieben wird. Ich...
Unter Linux Open Suse Leap 42.1 einen Windows Boot/ ISO USB Stick erstellen...
Tim Koetsier, 07.03.2017 15:26, 1 Antworten
Hallo, weiß jemand wie ich oben genanntes Vorhaben in die Tat umsetzen kann ? Wäre echt dankba...
Druckertreiber installieren OpenSuse42.1
Tim Koetsier, 07.03.2017 15:22, 1 Antworten
hallo, kann mir BITTE jemand helfen ich verzweifel so langsam. Habe einen Super Toner von Canon...

Jetzt auf den Mailinglisten

[EasyLinux-Ubuntu] Kodibuntu (Lubuntu) 14.04 auf Sony Vaio: Kein Sound via HDMI
Rainer, 30.03.2017 19:22
Hallo zusammen, schon eine Weile her, dass ich Kodibuntu auf dem Notebook installiert und es anschließend a...
[EasyLinux-Ubuntu] Samsung-Decryption
Gerhard Blaschke, 30.03.2017 16:38
Hallo Liste, nachdem sich in meiner Umgebung herumgesprochen hat, dass ich mit Linux zu tun habe, kommen au...
Re: [EasyLinux-Ubuntu] Videoplayer_für_Ubuntu
Heiko, 28.03.2017 20:23
Am Dienstag, 28. März 2017, 19:22:00 CEST schrieb Willi Zelinka: Hallo Uwe,hallo Willi > > vl...
Re: [EasyLinux-Ubuntu] Videoplayer_für_Ubuntu
Willi Zelinka, 28.03.2017 19:22
Hallo Uwe, Am Dienstag, 28. März 2017, 10:17:29 CEST schrieb Uwe Herrmuth: > Hallo Willi, > >...
Re: [EasyLinux-Ubuntu] Downloads von Windowsprogrammen unter Linux
Karl-Heinz, 28.03.2017 17:55
Am Tue, 28 Mar 2017 09:19:49 +0200 schrieb Uwe Herrmuth : Hallo Uwe, :-))))) > Für FF gibt es ein Ad...