Bash klingt wie ein seltsamer Name für eine Befehlszeilenschnittstelle, die Benutzer begrüßt, die sich bei einer beliebigen Linux-Distribution anmelden. Was genau ist Bash? Wofür können Sie es verwenden? Lass es uns herausfinden.

Während Bash normalerweise mit Linux in Verbindung gebracht wird, können Sie es auch unter Windows verwenden. macOS enthält bereits Bash, obwohl es die Standard-Shell in Zsh geändert hat – eine erweiterte Version von Bash mit einigen zusätzlichen Funktionen.

Inhaltsverzeichnis

Was ist eine Shell?

Der Begriff Bash-Shell wird viel herumgeworfen, aber was ist überhaupt eine Shell? Warum wird es benötigt? Und warum scheint Bash die einzige Shell da draußen zu sein?

Moderne Betriebssysteme mit ihren intuitiven grafischen Benutzeroberflächen lassen die Verwendung eines Computers einfach erscheinen. Aber in den frühen Tagen der Computer war es nicht so einfach, einem System zu sagen, was es tun soll.

Programmierer mussten die Low-Level-Details des Systems kennen, für das sie kodierten, und jedes Stück Hardware manuell anweisen. Betriebssysteme wurden entwickelt, um diese Lücke zu schließen, aber wie würden Sie das Betriebssystem selbst anweisen?

Geben Sie die Shell ein. Die äußerste Schicht des Betriebssystems wurde als interaktive Umgebung konzipiert, die alle Funktionen des Computers in einer einfachen Schnittstelle darstellt. Diese Shell war die weiteste, in die sich ein Benutzer des Computers vertiefen musste, da sie alle Befehle enthielt, die zum Betrieb des Systems erforderlich waren.

Wieder Bourne: Wie Bash entstand

Ein verbreiteter Irrglaube ist, dass Bash von Linus Torvalds für das Linux-Betriebssystem entwickelt wurde. In Wirklichkeit wurde Bash lediglich nach Linux portiert, das bereits in seinem Vorgänger Unix verwendet wurde.

In vielerlei Hinsicht ist Unix der Ort, an dem alles für moderne Betriebssysteme begann. Es beseitigte einen Großteil der verworrenen Komplexität, die frühere Betriebssystemimplementierungen geplagt hatte, und präsentierte die Funktionen eines Computers in einer vergleichsweise einfachen textbasierten Oberfläche.

Natürlich hat Unix selbst die meisten seiner Ideen von Multics übernommen, einschließlich des Konzepts einer Shell. Aber es war Unix, das die Technik tatsächlich populär machte, wobei die Thompson Shell mit ihrer ersten Version eingeführt wurde.

Seine Funktionalität war jedoch ziemlich eingeschränkt, und viele Programmierer änderten schließlich die Shell, um sie skriptfreundlicher zu machen. Die Bourne-Shell war der offizielle Ersatz der Unix-Shell und fügte Unterstützung für Shell-Skripte hinzu.

Die Bourne Again Shell wurde viel später veröffentlicht und bot eine weitere Verbesserung ihrer Skriptfähigkeiten und machte sie zu einer kostenlosen Open-Source-GNU-Lizenz-Shell, die von jedem Betriebssystem verwendet werden konnte. Und es wurde schnell von Linux übernommen und wurde zur Standard-Shell für seine verschiedenen Distributionen.

Aber was kann Bash?

Bash ist im Grunde eine vollwertige Scripting-Umgebung mit vollständigem Zugriff auf das Linux-System. Von der Verwaltung von Dateien bis zum Ausführen von Anwendungen können Sie jede Rechenaufgabe mit Bash-Befehlen ausführen.

Für die meisten Linux-Benutzer bedeutet dies nur manuelle Shell-Befehle. Schließlich ist der Hauptzweck von Bash, als Schnittstelle zum Betriebssystem zu dienen.

Und es gibt einige dieser eingebauten Befehle. Sie können den Dateibesitz mit chown verwalten, Netzwerkeinstellungen mit ifconfig konfigurieren, Verzeichnisse mit find suchen – die Liste geht weiter.

Aber Bash würde nicht existieren, wenn Benutzer nur an Linux-Befehlen interessiert wären. Nein, die wahre Stärke der Linux-Shell liegt im Skripting.

Die Bedeutung der Skripterstellung

Die Idee der Skripterstellung ist einfach. Anstatt alle Befehle, die das System einzeln ausführen soll, manuell einzugeben, speichern Sie die Befehle in einer Textdatei, die bei Bedarf ausgeführt werden kann.

Dies verwandelt die Shell-Schnittstelle in eine Art Programmiersprache, die es Benutzern ermöglicht, jede Aktion in ein wiederverwendbares Skript zu automatisieren. Offensichtlich geht es noch weiter, da jede Programmiersprache neben der Möglichkeit, Code zu speichern, Dinge wie Variablen und Funktionen benötigt.

Und Bash hat all diese Funktionen. Aus diesem Grund ist die Shell – und in gewissem Maße Linux im Allgemeinen – so beliebt für die Verwaltung von Servern und kommerziellen Systemen.

Ein Heimanwender muss sich vielleicht durch eine Reihe von Schaltflächen klicken, aber ein Systemadministrator muss in der Lage sein, jede Aktion auf einer großen Anzahl von Computern aus der Ferne auszuführen. Bash-Skripte machen diese Art der automatisierten Systemverwaltung möglich.

Betrachten Sie zum Beispiel unseren Leitfaden zum Umbenennen von Dateien und Ordnern unter Linux. Die Anleitung veranschaulicht beide Methoden – GUI und Skript. Wie Sie sehen können, ist die Scripting-Methode viel skalierbarer, wenn eine große Anzahl von Dateien beteiligt ist.

Erste Schritte mit Bash

Das Gute an Bash ist, dass es nicht nur auf Linux beschränkt ist. Sie können Linux jetzt unter Windows über das Windows-Subsystem für Linux (WSL) installieren, das standardmäßig mit Bash geliefert wird.

Das bedeutet, dass Sie mit Bash experimentieren können, ohne komplett auf Linux umsteigen zu müssen. Auch wenn Sie ein gelegentlicher Benutzer sind, der nicht beabsichtigt, mit Linux-Servern zu arbeiten, können die interessanten Funktionen einer Bash-Shell für Sie nützlich sein.

Nicht, dass Bash Ihre einzige Option zur Automatisierung von Rechenaufgaben wäre. PowerShell ist eine ähnliche Schnittstelle, die mit Windows funktioniert – abgesehen von dem, was Sie natürlich mit der Eingabeaufforderung verwalten können.

Categories: IT Info