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

Probleme mit der Maus
Thomas Roch, 21.02.2017 13:43, 1 Antworten
Nach 20 Jahren Windows habe ich mich zu Linux Ubuntu probeweise durchgerungen!!! Installation - k...
KWin stürzt ab seit Suse Leap 42.2
Wimpy *, 21.02.2017 09:47, 0 Antworten
OpenSuse 42.2 KDE 5.8.3 Framework 5.26.0 QT 5.6.1 Kernel 4.4.46-11-default 64-bit Open-GL 2....
Shell-Befehl zur Installation von Scanner-Treiber
Achim Zerrer, 15.02.2017 12:13, 10 Antworten
Hallo, ich habe Einen Brother Drucker mit Scanner. Nachdem ich mit Hilfe der Community den Druck...
kiwix öffnet ZIM Datei nicht
Adrian Meyer, 13.02.2017 18:23, 1 Antworten
Hi, ich nutze Zim Desktop für mein privates Wiki. Fürs Handy habe ich mir kiwix heruntergelade...
registration
Brain Stuff, 10.02.2017 16:39, 1 Antworten
Hallo, Das Capatcha auf der Registrierungsseite von linux-community ist derartig schlecht gema...

Jetzt auf den Mailinglisten

Re: [EasyLinux-Ubuntu] Aliase [war: Von Linux Mint 15 Olivia zu Linux Mint 18.1 Serena]
Alfred Zahlten, 22.02.2017 11:06
Am 22.02.2017 um 09:18 schrieb Uwe Herrmuth: Hallo Uwe, >>>> >>>> Zugegriffen: 20...
Re: [EasyLinux-Ubuntu] Mint 18.1 neu installieren
Gerhard Blaschke, 22.02.2017 10:26
Am 22.02.2017 um 10:13 schrieb Willi Zelinka: > Hallo Gerhard, > > Am Mi Februar 22 2017, 01:47...
Re: [EasyLinux-Ubuntu] Mint 18.1 neu installieren
Willi Zelinka, 22.02.2017 10:13
Hallo Gerhard, Am Mi Februar 22 2017, 01:47:57 schrieb Alfred Zahlten: > OK, lade dir die neue Mint 18.1...
Re: [EasyLinux-Ubuntu] Aliase [war: Von Linux Mint 15 Olivia zu Linux Mint 18.1 Serena]
Uwe Herrmuth, 22.02.2017 09:18
Hallo Alfred, Alfred schrieb am 21.02.2017 um 17:30: > >> > >> Zugegriffen: 2015-06-07...
Re: [EasyLinux-Ubuntu] Mint 18.1 neu installieren
Heiko, 21.02.2017 21:01
Am Dienstag, 21. Februar 2017, 16:48:48 CET schrieb Gerhard Eilers: Hallo Gerhard Blöd,daß ich als nicht-Mi...