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

Tipp der Woche

Ubuntu 14.10 und VirtualBox
Ubuntu 14.10 und VirtualBox
Tim Schürmann, 08.11.2014 18:45, 0 Kommentare

Wer Ubuntu 14.10 in einer virtuellen Maschine unter VirtualBox startet, der landet unter Umständen in einem Fenster mit Grafikmüll. Zu einem korrekt ...

Aktuelle Fragen

Nach Ubdates alles weg ...
Maria Hänel, 15.11.2014 17:23, 4 Antworten
Ich brauche dringen eure Hilfe . Ich habe am wochenende ein paar Ubdates durch mein Notebook von...
Brother Drucker MFC-7420
helmut berger, 11.11.2014 12:40, 1 Antworten
Hallo, ich habe einen Drucker, brother MFC-7420. Bin erst seit einigen Tagen ubuntu 14.04-Nutzer...
Treiber für Drucker brother MFC-7420
helmut berger, 10.11.2014 16:05, 2 Antworten
Hallo, ich habe einen Drucker, brother MFC-7420. Bin erst seit einigen Tagen ubuntu12.14-Nutzer u...
Can't find X includes.
Roland Welcker, 05.11.2014 14:39, 1 Antworten
Diese Meldung erhalte ich beim Versuch, kdar zu installieren. OpenSuse 12.3. Gruß an alle Linuxf...
DVDs über einen geeigneten DLNA-Server schauen
GoaSkin , 03.11.2014 17:19, 0 Antworten
Mein DVD-Player wird fast nie genutzt. Darum möchte ich ihn eigentlich gerne abbauen. Dennoch wür...

Jetzt auf den Mailinglisten

Re: [EasyLinux-Suse] OS_13.2_mate_caja_multiple_Instanzen_(hier_erstmal_gelöst)
Heiko, 27.11.2014 14:07
Am Mittwoch, 26. November 2014, 21:18:18 schrieb H.-Stefan Neumeyer: Hallo Stefan. > Ich kann be...
[EasyLinux-Ubuntu] Personalausweis
Hartmut Haase, 27.11.2014 13:54
Hallo Liste, demnächst bekomme ich einen neuen Personalausweis, der ja bekanntlich eine Online-Funktion ha...
Re: [EasyLinux-Ubuntu] Trojanerbefall
Maik Lehmberg, 27.11.2014 06:31
Am 26.11.2014 um 17:21 h schrieb Joachim Puttkammer: > diese CD sagt mir zu, > nur dauert es etwas, b...
Re: [EasyLinux-Ubuntu] Mint17 auf einem Stick
Alfred Zahlten, 27.11.2014 00:04
Am 26.11.2014 um 23:28 schrieb Nguyen Dong Loan: > Am Mittwoch, 26. November 2014, 00:33:58 schrieb Alfred...
Re: [EasyLinux-Ubuntu] Mint17 auf einem Stick
Nguyen Dong Loan, 26.11.2014 23:28
Am Mittwoch, 26. November 2014, 00:33:58 schrieb Alfred Zahlten: Wenn ich fragen darf, was soll das jetzt so...