Die 5 am häufigsten verwendeten Open-Source-Shells für Linux
Die Shell ist der Befehlsinterpretor in einem Betriebssystem wie Unix oder GNU/Linux, es ist ein Programm, das andere Programme ausführt. Es bietet einem Computerbenutzer eine Schnittstelle zum Unix/GNU Linux-System, so dass der Benutzer verschiedene Befehle oder Dienstprogramme/Tools mit einigen Eingabedaten ausführen kann.
Wenn die Shell die Ausführung eines Programms beendet hat, sendet sie eine Ausgabe an den Benutzer auf dem Bildschirm, der das Standardausgabegerät ist. Aus diesem Grund wird es als "Befehlsinterpretor" bezeichnet.
Die Shell ist viel mehr als nur ein Befehlsinterpretor, sie ist auch eine eigene Programmiersprache mit vollständigen Programmiersprachenkonstrukten wie bedingter Ausführung, Schleifen, Variablen, Funktionen und vielem mehr.
Aus diesem Grund ist die Unix/GNU-Linux-Shell im Vergleich zur Windows-Shell leistungsfähiger.
In diesem Artikel werfen wir einen Blick auf einige der am häufigsten verwendeten Open-Source-Shells unter Unix/GNU Linux.
1. Bash-Shell
Die Bash Shell, oder einfach "Bash", steht für "Bourne Again SHell". Sie ist eine Weiterentwicklung der originalen Bourne Shell (sh) und wurde 1989 von Brian Fox eingeführt.
Im Laufe der Jahre hat sich Bash zu einem der beliebtesten und am weitesten verbreiteten Befehlszeileninterpreter auf vielen Linux-Distributionen und macOS entwickelt (bis Catalina, danach wurde es durch zsh ersetzt).
Bash bietet Benutzern die Möglichkeit, Befehle auszuführen, im Dateisystem zu navigieren und Skripts auszuführen. Benutzer können Funktionen wie Befehlsverlauf, Tab-Vervollständigung und Skriptfunktionen nutzen, um Aufgaben zu automatisieren und Arbeitsabläufe zu optimieren.
Die Bash-Shell hat eine entscheidende Rolle bei der Entwicklung des Open-Source-Computings gespielt und bietet eine konsistente Schnittstelle für Benutzer, um mit ihren Systemen zu interagieren.
2. Tcsh/Csh-Shell
Tcsh (ausgesprochen "tee-shell") und Csh (ausgesprochen "see-shell") sind Unix-basierte Kommandozeilen-Shells, die es schon seit Jahrzehnten gibt. Csh, oder die C-Schale, wurde von Bill Joy in den späten 1970er Jahren an der University of California in Berkeley entwickelt.
Es führte mehrere Funktionen und Skriptsyntax ein, die von der Programmiersprache C inspiriert waren, was es bei Programmierern, die mit C vertraut sind, beliebt machte.
Tcsh ist eine verbesserte Version des ursprünglichen Csh, das für "Tenex C Shell" steht, wobei "Tenex" eine Anspielung auf das Betriebssystem TENEX ist.
Tcsh enthält alle Funktionen von Csh zusammen mit zusätzlichen Verbesserungen, wie z. B. Befehlszeilenbearbeitung, Jobsteuerung und Befehlsvervollständigung.
Beide Shells waren in der Unix-Welt einflussreich, und viele Benutzer schätzten ihre einzigartige Skriptsyntax und ihre Funktionen. Im Laufe der Zeit haben jedoch andere Shells wie bash aufgrund ihrer umfangreichen Funktionen und ihrer weit verbreiteten Akzeptanz an Popularität gewonnen.
Nichtsdestotrotz bleiben Tcsh und Csh ein integraler Bestandteil der Shell-Geschichte von Unix.
3. Ksh-Schale
Die KornShell, allgemein bekannt als ksh, ist eine Unix-Shell, die Anfang der 1980er Jahre von David G. Korn in den AT&T Bell Laboratories entwickelt wurde.
Es kombiniert Funktionen aus der C-Shell (csh) und der Bourne-Shell (sh) mit dem Ziel, das Beste aus beiden Welten zu bieten. Im Laufe der Jahre wurde ksh für seine fortschrittlichen Skripting-Funktionen gelobt, was es zu einem Favoriten bei vielen Systemadministratoren und Power-Usern macht.
Eines der herausragenden Merkmale von ksh sind seine assoziativen Arrays, eine Eigenschaft, die in Shells seiner Zeit nicht üblich war. Es wurde auch das select-Konstrukt eingeführt, das die Menügenerierung in Skripten einfach macht.
Ein weiterer bedeutender Vorteil sind die Funktionen zur Bearbeitung auf der Befehlszeile und zum Verlauf, die später von anderen Shells wie bash übernommen wurden.
4. Zsh-Schale
Die Zsh-Shell, oft einfach als "Zsh" bezeichnet, ist eine leistungsstarke Unix-Shell, die bei Programmierern und Systemadministratoren bemerkenswerte Popularität erlangt hat.
Zsh wurde als Erweiterung der Bourne Shell entwickelt und integriert Funktionen aus anderen Shells wie Bash, ksh und tcsh und bietet eine Vielzahl von Funktionen und eine verbesserte interaktive Nutzung.
Eines der herausragenden Merkmale von Zsh sind die robusten Funktionen zur automatischen Vervollständigung. Im Gegensatz zu anderen Shells ist die automatische Vervollständigung von Zsh kontextbezogen und schlägt relevante Befehle, Dateipfade und sogar Git-Zweige vor, was die Benutzererfahrung reibungsloser und intuitiver macht.
Darüber hinaus ist Zsh mit dem Oh My Zsh-Framework hochgradig anpassbar, Benutzer können problemlos Themen und Plugins anwenden, wodurch sowohl die ästhetischen als auch die funktionalen Aspekte ihrer Terminalumgebung verbessert werden.
5. Fisch
Fish Shell ist eine moderne, benutzerfreundliche Befehlszeilen-Shell, die darauf abzielt, Benutzern eine interaktive und intuitive Benutzeroberfläche zu bieten.
Im Gegensatz zu herkömmlichen Shells wie Bash oder Zsh bietet Fish sofort intelligente Vorschläge, die es sowohl Anfängern als auch erfahrenen Benutzern erleichtern, zu navigieren und Befehle auszuführen.
Eine der herausragenden Funktionen von Fish sind die automatischen Vorschläge, die Echtzeit-Feedback basierend auf Ihrem Befehlsverlauf liefern und eine schnellere Befehlsausführung ermöglichen.
Fish verfügt außerdem über eine lebendige und farbenfrohe Benutzeroberfläche mit Syntaxhervorhebung, die das Lesen und Verstehen von Befehlen erleichtert. Die webbasierte Konfiguration ermöglicht es Benutzern, ihre Shell-Erfahrung anzupassen, ohne sich in komplexe Konfigurationsdateien vertiefen zu müssen.
Darüber hinaus verfügt Fish über eine umfangreiche und wachsende Sammlung von Plug-ins und Themes, die von der Community beigesteuert werden und die Funktionalität und das Erscheinungsbild verbessern.
Zusammenfassung
Dies sind nicht die einzigen Shells, die unter Unix/GNU Linux verfügbar sind, aber sie gehören zu den am häufigsten verwendeten, abgesehen von denen, die mit verschiedenen Linux-Distributionen vorinstalliert sind.
Ich hoffe, Sie finden diesen Artikel nützlich. Für weitere Informationen zögern Sie bitte nicht, einen Kommentar zu hinterlassen.




