[[Vorlage(Getestet, bionic focal)]] {{{#!vorlage Wissen [:Pakete installieren: Installation von Programmen] [:Terminal: Ein Terminal öffnen] [:Programme_starten: Starten von Programmen] }}} [[Inhaltsverzeichnis(1)]] [[Bild(Wiki/Icons/terminal.png, 48, left)]] [github:koalaman/shellcheck:ShellCheck] {en} ist ein in [:Haskell:] entwickeltes Befehlszeilenwerkzeug zur Analyse von [:Bash:]- und [:Shell:]-Skripten. Es überprüft die Syntax auf gängige Fehler und wirft zusätzlich Warnungen sowie Verbesserungsvorschläge für semantische Problemfälle und bekannte Fallstricke aus. Für Anfänger wie Fortgeschrittene gleichermaßen interessant, steht dieses nützliche Hilfswerkzeug derzeit aber nur in englischer Sprache zur Verfügung. Das Programm kann auch online als Webdienst auf [http://www.shellcheck.net ShellCheck.net] {en} verwenden werden. {{{#!vorlage hinweis Ein solches Werkzeug kann nicht alle Fehler finden und bemängelt mitunter auch verdächtige Muster, die keine Fehler sind. Das Programm bietet keine Garantie und Warnungen sollten daher überprüft werden. }}} = Installation = ShellCheck kann seit Ubuntu 15.04 aus den offiziellen Paketquellen installiert werden: [1] {{{#!vorlage Paketinstallation shellcheck, universe }}} = Bedienung = Das Programm wird im Terminal mit folgendem Befehl ausgeführt: [2] [3] {{{#!vorlage befehl shellcheck DATEI }}} Die Ausgabe erfolgt standardmäßig mit farbiger [wikipedia:Syntaxhervorhebung:] direkt auf der Textkonsole. Die [:man:Manpage] listet einige weitere Optionen auf, um bspw. das Ausgabeformat ([:GCC:]-kompatibel, [wikipedia:JSON:], [wikipedia:Checkstyle:]) zu ändern oder einen anderen [:Bash:]-Dialekt (z.B. [:Dash:]) anzugeben. Die Einbindung in [:Editor:Texteditoren] oder [:Entwicklungsumgebungen:] ist ebenfalls möglich. Weitere Informationen dazu findet man auf der [github:koalaman/shellcheck:Projektseite]. = Links = * [github:koalaman/shellcheck:Projektseite] {en} * [github:koalaman/shellcheck/issues:Bugtracker] {en} * [http://www.shellcheck.net ShellCheck Online] {en} #tag: Shell, Einsteiger, Programmierung