In Linux bezieht sich Shell auf eine benutzerorientierte Befehlsschnittstelle, die als Schnittstelle ausgedrückt wird, die vom Benutzer eingegeben werden kann. Diese Schnittstelle kann auch laufende Informationen zurückmelden. Shell ist ein Interpreterprogramm im Linux-Betriebssystem. Es ist dafür verantwortlich, vom Benutzer eingegebene Befehle zu empfangen und zur Ausführung an den Kernel weiterzuleiten. Die Bourne Again-Shell (Bash) ist die Standard-Shell auf Linux-Systemen.
Linux-Shell-Einführung
Shell bezieht sich in Linux auf eine benutzerorientierte Befehlsschnittstelle, die als Schnittstelle ausgedrückt wird, die vom Benutzer eingegeben werden kann.
Shell ist eine Schnittstelle, die den Benutzer und den Kernel verbindet und es dem Benutzer ermöglicht, mit dem System zu interagieren. 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. In Linux-Systemen ist die Standard-Shell die Bourne Again Shell (bash).
Die Existenzform der Shell in Linux:Da sich Linux von Windows unterscheidet, verfügt Linux über eine Trennung von Kernel und Benutzeroberfläche. Es kann unabhängig von der grafischen Oberfläche ausgeführt werden und kann auch auf einem grafischen Desktop ausgeführt werden der Kern.
Auf diese Weise gibt es im Linux-System zwei Shell-Manifestationen, eine ist die Shell in der Terminal-Betriebsumgebung ohne grafische Oberfläche und die andere ist das MS-DOS-Ausführungsfenster, das dem auf dem Desktop ausgeführten Windows ähnelt Ersteres wird normalerweise kurz als Terminal bezeichnet, und letzteres wird im Allgemeinen direkt als Shell bezeichnet Verwendet werden Bourne-Shell(sh), C-Shell(csh), Korn-Shell(ksh).
1. Bourne Shell
Bourne Shell ist ein interaktiver Befehlsinterpreter und eine Befehlsprogrammiersprache.
Die Bourne-Shell wurde einst als gängiges Tool für die Systemverwaltung verwendet und ist die Standard-Shell des UNIX-Betriebssystems. Die meisten Befehlsdateien für die Systemverwaltung, wie z. B. rc start, stop und Shutdown, sind Bourne-Shell-Befehlsdateien und werden häufig von Systemadministratoren verwendet, wenn sie als Root im Einzelbenutzermodus angemeldet sind. Die für ihre Einfachheit und Effizienz bekannte Bourne-Shell wurde von AT&T entwickelt. Der Standardwert für das Eingabeaufforderungssymbol der Bourne-Shell ist $.
2. c-Shell
c-Shell ist eine Variante der Shell, die „C-ähnliche“ Syntax verwendet und über 52 interne Befehle verfügt. relativ groß.
C-Shell wurde in Berkeley entwickelt und fügt einige neue Funktionen hinzu, wie z. B. Befehlszeilenverlauf, Aliase, integrierte Arithmetik, Dateinamenvervollständigung und Job-Job-Kontrolle. Benutzer, die Shells häufig im Konversationsmodus ausführen, bevorzugen die Verwendung der C-Shell. Systemadministratoren bevorzugen jedoch die Verwendung der Bourne-Shell als Befehlsdatei, da Bourne-Shell-Befehlsdateien besser sind als C-Shell-Befehlsdateien . Der Standardwert für das C-Shell-Eingabeaufforderungssymbol ist %.3. Korn-Shell
Korn-Shell ist eine Unix-Shell. David Korn schrieb es in den frühen 1980er Jahren in den Bell Labs. Es ist vollständig aufwärtskompatibel mit der Bourne-Shell und enthält viele Funktionen der C-Shell, wie z. B. die von Bell Labs-Benutzern benötigte Befehlsbearbeitung. Korn-Shell ist eine Obermenge der Bourne-Shell, entwickelt von David Korn von AT&T. Es fügt einige Funktionen hinzu und ist weiter fortgeschritten als die C-Shell. Zu den Funktionen der Korn-Shell gehören bearbeitbare Prozeduren, Aliase, Funktionen, Platzhalter für reguläre Ausdrücke, integrierte Arithmetik, Jobsteuerung, Co-Verarbeitung und spezielle Ausnahmen. Die Bourne-Shell ist nahezu vollständig aufwärtskompatibel mit der Korn-Shell, sodass unter der Bourne-Shell entwickelte Programme weiterhin auf der Korn-Shell ausgeführt werden können. Der Standardwert für das Eingabeaufforderungssymbol der Korn-Shell ist ebenfalls $. Die auf Linux-Systemen verwendete Korn-Shell heißt pdksh und bezieht sich auf Public Domain Korn Shell.
Drei Shells haben ihre eigenen Vor- und Nachteile:Sh ist die ursprünglich in Unix verwendete Shell und kann auf jeder Unix-Variante verwendet werden. Obwohl sh hervorragend in der Shell-Programmierung ist, ist es nicht so gut wie csh und ksh, wenn es um die Interaktion mit Benutzern geht. Bash ist die Standard-Shell von Linux und vollständig kompatibel mit sh. Bash wird in bin/bash abgelegt und bietet Funktionen wie Befehlsvervollständigung, Befehlsbearbeitung und Befehlsverlaufstabellen. Außerdem verfügt es über eine flexible und leistungsstarke Programmierschnittstelle Gleichzeitig verfügt es über eine benutzerfreundliche Oberfläche.
Wir müssen also zumindest wissen, dass sh und bash beide die Standard-Shells unter Linux sind und bash eine aktualisierte Version von sh ist.
Wie die Shell Benutzeranweisungen ausführtDie Shell bietet zwei Möglichkeiten, Anweisungen auszuführen. Die erste Methode besteht darin, dass der Benutzer im Voraus eine SH-Skriptdatei schreibt, die das Shell-Skript enthält, und dann das Shell-Programm verwendet, um das Skript auszuführen. Die zweite Form besteht darin, dass der Benutzer den Shell-Befehl direkt auf der Shell-Schnittstelle ausführt. Aufgrund der Shell-Schnittstelle ist jeder daran gewöhnt, Zeile für Zeile zu schreiben und schreibt selten einen vollständigen Satz von Programmen, die zusammen ausgeführt werden sollen, daher wird dies auch aufgerufen die Befehlszeile. Zusammenfassung: Man kann sagen, dass die Shell nur eine Brücke zwischen dem Benutzer und der Maschine ist, die es uns ermöglicht, den Computer über die Shell zu bedienen und mit ihm zu interagieren, um den Zweck zu erreichen, dass der Computer uns dient.
Das obige ist der detaillierte Inhalt vonWelche Arten von Linux-Shells gibt es?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!