Bash klingt nach einem seltsamen Namen 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? Finden wir es heraus.
Während Bash normalerweise mit Linux verknüpft ist, können Sie auch Verwenden Sie es unter Windows verwenden. macOS enthält bereits Bash, obwohl die Standard-Shell in Zsh geändert wurde – eine erweiterte Version von Bash mit einigen zusätzlichen Funktionen.
Was ist eine Shell?
Der Begriff Bash-Shell wird oft verwendet, aber was ist eine Shell überhaupt? 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 sollte.
Programmierer mussten die grundlegenden Details des Systems kennen, für das sie programmierten, und jedes Teil der Hardware manuell anweisen. Betriebssysteme wurden entwickelt, um diese Lücke zu schließen, aber wie würden Sie das Betriebssystem selbst anweisen?
Betreten Sie die Shell. Die äußerste Schicht des Betriebssystems wurde als interaktive Umgebung konzipiert, die alle Funktionen des Computers in einer einfachen Benutzeroberfläche bereitstellt. Diese Shell war die weiteste, in die ein Benutzer des Computers eintauchen musste, da sie alle für den Betrieb des Systems erforderlichen Befehle enthielt.
Bourne Again: Wie Bash entstand
Ein weit verbreitetes Missverständnis ist, dass Bash von Linus Torvalds für das Linux-Betriebssystem erstellt wurde. In Wirklichkeit wurde Bash lediglich auf Linux portiert und kam bereits in seinem Vorgänger Unix zum Einsatz.
In vielerlei Hinsicht begann unter Unix alles für moderne Betriebssysteme. Dadurch wurde ein Großteil der komplexen Komplexität beseitigt, die frühere Betriebssystemimplementierungen plagte, und die Funktionen eines Computers wurden in einer vergleichsweise einfachen textbasierten Benutzeroberfläche dargestellt.
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, als die Thompson Shell mit ihrer ersten Version eingeführt wurde.
Ihre Funktionalität war jedoch ziemlich begrenzt, und viele Programmierer haben die Shell schließlich modifiziert, 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 Skriptfunktionen und verwandelte sie in eine kostenlose Open-Source-GNU-Lizenz-Shell, die von jedem Betriebssystem verwendet werden konnte. Und es wurde schnell von Linux übernommen und zur Standard-Shell für seine verschiedenen Distributionen.
Aber was kann Bash?
Bash ist im Grunde eine vollwertige Skriptumgebung mit vollständigem Zugriff auf das Linux-System. Von der Verwaltung von Dateien bis zur Ausführung von Anwendungen können Sie jede Computeraufgabe mit Bash-Befehlen ausführen.
Für die meisten Linux-Benutzer bedeutet dies nur manuelle Shell-Befehle. Schließlich besteht der Hauptzweck von Bash darin, als Schnittstelle zum Betriebssystem zu dienen.
Und es gibt eine ganze Reihe dieser integrierten Befehle. Sie können den Dateieigentum mit chown verwalten, Netzwerkeinstellungen mit ifconfig konfigurieren, Verzeichnisse mit finden 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 in der Skripterstellung.
Die Bedeutung von Skripten
Die Idee, Befehle per Skript zu erstellen, 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.
Dadurch wird die Shell-Schnittstelle zu einer Art Programmiersprache, die es Benutzern ermöglicht, jede Aktion in einem wiederverwendbaren Skript zu automatisieren. Offensichtlich geht es darüber hinaus, denn jede Programmiersprache benötigt neben der Möglichkeit, Code zu speichern, auch Dinge wie Variablen und Funktionen.
Und Bash verfügt über all diese Funktionen. Aus diesem Grund ist die Shell – und teilweise auch Linux im Allgemeinen – so beliebt für die Verwaltung von Servern und kommerziellen Systemen.
Ein Heimanwender kann durch Anklicken einer Reihe von Schaltflächen darauf zugreifen, ein Systemadministrator muss jedoch in der Lage sein, beliebige Aktionen auf einer großen Anzahl von Computern aus der Ferne auszuführen. Bash-Skripte machen diese Art der automatisierten Systemverwaltung möglich.
Betrachten Sie beispielsweise Unser Leitfaden zum Umbenennen von Dateien und Ordnern unter Linux. Der Leitfaden veranschaulicht beide Methoden – GUI und Skript. Wie Sie sehen, ist die Skriptmethode weitaus 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 jetzt Installieren Sie Linux unter Windows über das Windows-Subsystem für Linux (WSL) verwenden, das standardmäßig mit Bash geliefert wird.
Das bedeutet, dass Sie mit Bash experimentieren können, ohne komplett auf Linux umsteigen zu müssen. Selbst wenn Sie ein Gelegenheitsbenutzer sind, der nicht die Absicht hat, 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 Computeraufgaben ist. Power Shell ist eine ähnliche Schnittstelle, die mit Windows funktioniert – abgesehen natürlich von dem, was Sie mit die Eingabeaufforderung verwalten können.