Heim  >  Artikel  >  Java  >  Eine kurze Einführung in die Shell-Programmierung

Eine kurze Einführung in die Shell-Programmierung

巴扎黑
巴扎黑Original
2017-06-26 11:20:381347Durchsuche

Shell selbst ist ein in der Sprache C geschriebenes Programm. Es stellt eine Brücke für Benutzer zur Verwendung von Unix/Linux dar. Der Großteil der Arbeit des Benutzers wird über Shell erledigt. Shell ist sowohl eine Befehlssprache als auch eine Programmiersprache. Als Befehlssprache interpretiert und führt sie interaktiv vom Benutzer eingegebene Befehle aus, definiert verschiedene Variablen und Parameter und stellt viele Kontrollstrukturen bereit, die nur in Hochsprachen zu finden sind, einschließlich Schleifen und Verzweigungen.

Obwohl es nicht Teil des Unix/Linux-Systemkerns ist, ruft es die meisten Funktionen des Systemkerns auf, um Programme auszuführen, Dateien zu erstellen und die Ausführung verschiedener Programme parallel zu koordinieren. Daher ist die Shell für Benutzer das wichtigste Hilfsprogramm. Ein umfassendes Verständnis und eine umfassende Kenntnis der Eigenschaften und der Verwendung der Shell sind der Schlüssel für eine gute Nutzung des Unix/Linux-Systems.

Man kann sagen, dass die Kenntnisse im Umgang mit der Shell die Kenntnisse des Benutzers im Umgang mit Unix/Linux widerspiegeln.

Shell bietet zwei Möglichkeiten, Befehle auszuführen:

  • Interaktiv (Interaktiv): Den Befehl des Benutzers interpretieren und ausführen, der Benutzer gibt einen Befehl ein, Shell wird eines interpretieren und ausführen.

  • Batch: Der Benutzer schreibt im Voraus ein Shell-Skript, das viele Befehle enthält, sodass die Shell diese Befehle auf einmal ausführen kann, ohne die Befehle einzeln eingeben zu müssen.


Shell-Skripte sind Programmiersprachen sehr ähnlich. Sie verfügen auch über Variablen und Flusskontrollanweisungen, aber Shell-Skripte werden interpretiert und ausgeführt und müssen nicht kompiliert werden Das Programm liest Zeile für Zeile aus dem Skript. Das Abrufen und Ausführen dieser Befehle entspricht der Eingabe der Befehle im Skript Zeile für Zeile in die Shell-Eingabeaufforderung zur Ausführung.

Shell-Anfänger beachten bitte, dass es bei täglichen Anwendungen empfohlen wird, nicht das Root-Konto zum Ausführen von Shell zu verwenden. Als normaler Benutzer können Sie das System nicht absichtlich oder unabsichtlich beschädigen. Wenn Sie jedoch ein Root-Benutzer sind, kann das schon katastrophale Folgen haben.

Zu den gängigen Shell-Skript-Interpretern unter Unix/Linux gehören bash, sh, csh, ksh usw. Es ist üblich, sie als eine Art Shell zu bezeichnen. Wir reden oft darüber, wie viele Arten von Shell es gibt, aber eigentlich reden wir über den Shell-Skriptinterpreter.

Bash

Bash ist die Standard-Standard-Shell von Linux. Dieses Tutorial basiert ebenfalls auf Bash. bash wurde von Brian Fox und Chet Ramey fertiggestellt. Es ist die Abkürzung für BourneAgain Shell und verfügt über insgesamt 40 interne Befehle.

Linux verwendet es als Standard-Shell, da es über die folgenden Funktionen verfügt:

  • Sie können unter DOS ähnliche Funktionen wie doskey verwenden, die Pfeiltasten zum Durchsuchen und Schnellen verwenden Geben Sie Befehle ein und ändern Sie sie.

  • Gibt automatisch Befehle aus, die mit einer bestimmten Zeichenfolge beginnen, indem nach Übereinstimmungen gesucht wird.

  • enthält eine eigene Hilfefunktion. Sie müssen nur „help“ unter der Eingabeaufforderung eingeben, um relevante Hilfe zu erhalten.

sh

sh wurde von Steve Bourne entwickelt und ist die Abkürzung für Bourne Shell. sh ist die Standard-Standard-Shell von Unix.

ash

ash-Shell wurde von Kenneth Almquist geschrieben. Es handelt sich um eine kleine Shell, die unter Linux die wenigsten Systemressourcen beansprucht. Sie enthält nur 24 interne Befehle und ist daher sehr unpraktisch .

csh

csh ist ein relativ großer Linux-Kernel. Er wird von insgesamt 47 Autoren, vertreten durch William Joy, kompiliert und verfügt über insgesamt 52 interne Befehle. Diese Shell verweist tatsächlich auf eine Shell wie /bin/tcsh. Mit anderen Worten, csh ist tatsächlich tcsh.

ksh

ksh ist die Abkürzung für Korn Shell, geschrieben von Eric Gisin, mit insgesamt 42 internen Befehlen. Der größte Vorteil dieser Shell besteht darin, dass sie fast vollständig mit der kommerziellen Version von ksh kompatibel ist, sodass Sie die Leistung der kommerziellen Version testen können, ohne Geld für den Kauf der kommerziellen Version auszugeben.

Hinweis: Bash ist die Abkürzung für Bourne Again Shell und die Standard-Standard-Shell von Linux. Sie basiert auf der Bourne-Shell und übernimmt einige Funktionen der C-Shell und der Korn-Shell. Bash ist vollständig mit SH kompatibel, was bedeutet, dass in SH geschriebene Skripte ohne Änderungen in Bash ausgeführt werden können.

Kompilierte Sprachen

Viele traditionelle Programmiersprachen wie Fortran, Ada, Pascal, C, C++ und Java sind kompilierte Sprachen. Diese Art von Sprache muss den von uns geschriebenen Quellcode vorab in Objektcode (Objektcode) konvertieren. Dieser Vorgang wird als „Kompilierung“ bezeichnet.

Lesen Sie beim Ausführen des Programms den Objektcode direkt. Da sich der kompilierte Objektcode sehr nahe an der untersten Ebene des Computers befindet, ist die Ausführungseffizienz sehr hoch, was den Vorteil kompilierter Sprachen darstellt.

Da kompilierte Sprachen jedoch meist auf der untersten Ebene arbeiten und mit Bytes, Ganzzahlen, Gleitkommazahlen oder anderen Objekten auf Maschinenebene umgehen, erfordert die Implementierung einer einfachen Funktion oft viel komplexen Code. In C++ ist es beispielsweise schwierig, einfache Vorgänge wie „Alle Dateien in einem Verzeichnis in ein anderes Verzeichnis kopieren“ auszuführen.

Interpretierte Sprache

Interpretierte Sprache wird auch „Skriptsprache“ genannt. Bei der Ausführung dieser Art von Programm muss der Interpreter den von uns geschriebenen Quellcode lesen und ihn in Objektcode umwandeln, der dann vom Computer ausgeführt wird. Da jedes Mal, wenn das Programm ausgeführt wird, ein zusätzlicher Kompilierungsprozess stattfindet, verringert sich die Effizienz.

Der Vorteil der Verwendung von Skript-Programmiersprachen besteht darin, dass sie meist auf einer höheren Ebene als kompilierte Sprachen laufen und problemlos mit Objekten wie Dateien und Verzeichnissen umgehen können. Der Nachteil besteht darin, dass sie normalerweise nicht so effizient sind als kompilierte Sprachen. Der Nachteil besteht jedoch darin, dass es sich in der Regel lohnt, Skriptprogrammierung zu verwenden: Ein einfaches Skript, dessen Schreiben eine Stunde dauert, kann zwei Tage in Anspruch nehmen, um dieselbe Funktion in C oder C++ zu implementieren, und im Allgemeinen ist die Skriptausführungsgeschwindigkeit hoch genug, schnell genug, damit die Leute seine Leistungsprobleme ignorieren können. Beispiele für Skript-Programmiersprachen sind awk, Perl, Python, Ruby und Shell.

Die Verwendung von Shell-Skripten basiert auf:

  • Einfachheit: Shell ist eine Hochsprache; dadurch können Sie komplexe Vorgänge prägnant ausdrücken.

  • Portabilität: Mithilfe der von POSIX definierten Funktionen kann das Skript ohne Modifikation auf verschiedenen Systemen ausgeführt werden.

  • Einfach zu entwickeln: Ein leistungsstarkes und nützliches Skript kann in kurzer Zeit fertiggestellt werden.

Das obige ist der detaillierte Inhalt vonEine kurze Einführung in die Shell-Programmierung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn