Bash

Bash

Bash ist ein Programm, mit dem man einen Computer über getippte Befehle statt über Fenster und Symbole steuert. Es ist die Standardsteuerung auf vielen Linux-Servern und deshalb ein Grundwerkzeug in der Softwareentwicklung.

Die meisten Menschen bedienen einen Computer mit Maus und Symbolen. Es gibt aber einen zweiten Weg: Man tippt einen Befehl ein und drückt Enter. Bash ist das Programm, das solche Befehle annimmt, versteht und ausführt. Es zeigt dazu ein schlichtes Textfenster, in dem eine Eingabeaufforderung blinkt. Man schreibt zum Beispiel den Befehl zum Kopieren einer Datei, und Bash gibt den Auftrag an das Betriebssystem weiter. Der Name steht für „Bourne Again Shell“ und ist ein Wortspiel auf ein älteres Programm desselben Zwecks.

Warum Server per Text bedient werden

Ein Server in einem Rechenzentrum hat keinen Bildschirm und keine Maus. Man verbindet sich über das Netz mit ihm und bekommt genau eine Sache: eine Texteingabe. Auf Linux-Servern ist das in der Regel Bash. Wer Webseiten, Datenbanken oder KI-Modelle betreibt, arbeitet deshalb praktisch täglich damit.

Der zweite Grund ist Wiederholbarkeit. Was man klickt, ist nach dem Klicken verschwunden. Was man tippt, kann man in eine Textdatei schreiben und beliebig oft ausführen. Solche Dateien heißen Skripte. Ein einziges Skript kann hundert Schritte in derselben Reihenfolge erledigen, ohne dass ein Mensch etwas vergisst.

Genau das macht Bash zur Grundlage von Automatisierung. Wenn ein Entwicklerteam neuen Programmcode veröffentlicht, laufen im Hintergrund oft Bash-Befehle: Code holen, Tests starten, Ergebnis melden. Diese Befehle stehen fest in einer Datei und sind für jeden im Team nachlesbar.

Befehle, Pipes und Skripte

Ein Bash-Befehl besteht meist aus einem Programmnamen und Zusatzangaben. Bash selbst rechnet dabei kaum etwas aus. Es ist eher ein Vermittler: Es sucht das passende Programm auf der Festplatte, startet es und zeigt dessen Ausgabe an. Die eigentliche Arbeit machen also viele kleine Einzelprogramme.

Die stärkste Idee dahinter ist die Pipe, geschrieben als senkrechter Strich. Damit leitet man die Ausgabe eines Programms direkt als Eingabe in das nächste. Man kann sich das wie eine Fabrikstraße vorstellen: Ein Programm filtert, das nächste sortiert, das letzte zählt. So baut man aus einfachen Werkzeugen in einer Zeile eine ziemlich spezielle Auswertung.

Dazu kommen Bausteine, die man aus Programmiersprachen kennt. Bash kann Werte in Variablen speichern, Bedingungen prüfen und Schleifen laufen lassen. Damit lässt sich etwa sagen: Gehe alle Bilder in diesem Ordner durch und verkleinere jedes. Für lange, komplizierte Programme ist Bash aber unhandlich, dafür greifen Entwickler eher zu Sprachen wie Python.

Bash im Alltag von Entwicklern und in Sicherheitsmeldungen

Auf Apple-Rechnern und auf Linux-Notebooks ist eine solche Textsteuerung schon installiert; auf dem Mac heißt die Standardvariante inzwischen Zsh und funktioniert sehr ähnlich. Unter Windows lässt sie sich nachinstallieren. Wer eine Anleitung im Internet liest und dort Zeilen findet, die man „ins Terminal“ kopieren soll, hat es fast immer mit Bash-Befehlen zu tun.

Auch in Nachrichten taucht der Begriff auf. 2014 wurde eine Sicherheitslücke namens Shellshock bekannt, durch die Angreifer über Bash fremde Befehle auf Servern ausführen konnten. Weil das Programm auf Millionen Rechnern läuft, war die Aufregung groß. Solche Meldungen zeigen, wie viel Infrastruktur an diesem unscheinbaren Werkzeug hängt.

Ein aktueller Berührungspunkt ist die KI-Entwicklung. Programmierassistenten dürfen teilweise selbst Befehle in einer Shell ausführen, um Code zu testen. Das ist praktisch und riskant zugleich, denn ein falscher Befehl kann Daten löschen. Wer Bash grob versteht, kann bei solchen Werkzeugen besser einschätzen, was gerade passiert.

Subscribe free. Unsubscribe the second it sucks.

High-signal news across AI, business, UX, and tech. Every morning.