Linux-Shells: 1. Bourne-Shell; 3. Bourne-Shell; 6. Z-Shell;
Die Betriebsumgebung dieses Tutorials: Ubuntu 16.04-System, Dell G3-Computer.
Was ist Linux Shell?
Shell ist die Benutzeroberfläche des Systems und bietet Benutzern eine Schnittstelle zur Interaktion mit dem Kernel. Es empfängt vom Benutzer eingegebene Befehle und sendet sie zur Ausführung an den Kernel. Es handelt sich um ein Interpreterprogramm zwischen dem Linux-Kernel und den Benutzern. Linux bezieht sich normalerweise auf den /bin/bash-Interpreter, der für die Übersetzung und Übermittlung von Benutzer-/Programmanweisungen an den Kernel verantwortlich ist Das Linux-System bietet viele verschiedene Shells zur Auswahl.
Bourne ShellBourne Shell (als sh bezeichnet) wurde von Steven Bourne von AT&T Bell Labs für AT&T Unix entwickelt. Es ist die Standard-Shell von Unix und die Grundlage für die Entwicklung anderer Shells. Bourne Shell kann recht gut programmieren, ist jedoch nicht so gut wie andere Shells bei der Handhabung der Interaktion mit Benutzern.
C ShellC Shell (kurz csh) wurde von Bill Joy von der University of California, Berkeley, für BSD Unix entwickelt, seine Syntax ist der C-Sprache sehr ähnlich. Es bietet Benutzerinteraktionsfunktionen, die Bourne Shell nicht verarbeiten kann, z. B. Befehlsvervollständigung, Befehlsaliase, historische Befehlsersetzung usw.
Allerdings ist C Shell nicht mit Bourne Shell kompatibel.
Korn ShellKorn Shell (kurz ksh) wurde von David Korn von AT&T Bell Labs entwickelt. Es kombiniert die Vorteile von C Shell und Bourne Shell und ist vollständig abwärtskompatibel mit Bourne Shell. Korn Shell ist sehr effizient und sowohl die Befehlsinteraktionsschnittstelle als auch die Programmierinteraktionsschnittstelle sind sehr gut.
Bourne Again ShellDie am häufigsten verwendete Shell ist die Bourne Again Shell oder Bash. Es wurde für das GNU-Projekt als Open-Source-Alternative zur Bourne Shell entwickelt, einer beliebten Shell, die auf UNIX-Systemen verwendet wird. Bash lässt sich auch von einer Reihe anderer UNIX-Shells inspirieren, beispielsweise der C-Shell (csh) und der KornShell (ksh). Jede der Hauptfunktionen der UNIX-Shell ist anders: Die Bourne-Shell eignet sich zum Schreiben von Skripten, und obwohl die Skripterstellung mit der C-Shell Kenntnisse der Programmiersprache C erfordert, bietet sie einige praktische Tools, die sie für den interaktiven Einsatz besser geeignet machen. Bash kombiniert diese verbesserte Interaktivität mit der einfachen Skripterstellung der Bourne Shell. Obwohl Bash zur Standard-Shell auf Linux-Systemen wurde (und es auch heute noch für die meisten Distributionen ist), hindert es Projekte nicht daran, alternative Shells zu verwenden, wenn diese verbessert werden können.
Almquish-MuschelAlmquish-Muschel oder Esche ist eine solche Muschel. Diese Schale ist so konzipiert, dass sie mit der Bourne-Schale kompatibel und leicht ist. Gleichzeitig fehlen ihr aber auch die Verbesserungen, die einige Shells wie bash, ksh und csh bieten. Aufgrund seiner geringen Größe und geringen Ressourcenauslastung wird es häufig in eingebetteten Systemen verwendet, beispielsweise in solchen, die BusyBox-Systeme verwenden. BusyBox wird häufig als Shell für Android-Geräte und als Teil des Linux-Installations- und Bootvorgangs verwendet. Wenn Sie also Probleme beim Installieren oder Starten Ihres Linux-Systems haben, kann dies daran liegen, dass Sie die Almquish-Shell in BusyBox verwenden. Es gibt auch einen Port namens dash (Debian Almquish Shell), von dem aus Ash auf Debian Linux portiert wird. Dash ist die Standard-Shell für den Befehl /bin/sh auf Debian- und Ubuntu-Systemen. oder zsh, ist eine weitere Shell, die auf der Bourne-Shell basiert und einige Funktionen von bash, ksh und csh hinzufügt. Darüber hinaus verfügt sie über eine vollständige Befehlszeilenvervollständigung, die nicht nur Befehlsnamen, sondern auch Optionen und Parameter erkennt , sowie Rechtschreibkorrekturen sind auch mit Themes und Plugins erweiterbar und können im Kompatibilitätsmodus ausgeführt werden, sodass sie wie einige andere Shells funktionieren (z. B. in Bezug auf Plugins und Themes). Tools helfen dabei, sie über die Befehlszeile zu finden und zu installieren, was die Einrichtung sehr einfach macht. Mit diesen Funktionen ist die Z-Shell zu einer beliebten Alternative zu Bash geworden. Wie der Name schon sagt, ist sie eine benutzerfreundliche und interaktive Shell Deshalb verfügt Fish über viele Funktionen, die die Arbeit an der Befehlszeile erleichtern, z. B. Syntaxhervorhebung und Fehlerprüfung sowie die Verwendung von Farben, um die Arbeit zu erleichtern. Außerdem gibt es einige automatische Vorschläge, die Befehle während der Eingabe vervollständigen Der Nachteil ist, dass es nicht mit der Bourne-Shell kompatibel ist. Daher sind viele davon nicht auf eine andere Shell übertragbar, da sie beispielsweise eine eigene Skriptsprache verwenden
Verwandte Empfehlungen: „
Linux-Video-Tutorial“
Das obige ist der detaillierte Inhalt vonWas sind die Linux-Shells?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!