GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Was sind die verschiedenen Arten von Shells in Linux?

Shells sind ein wichtiger Bestandteil jeder Linux-Benutzersitzung. In Linux werden uns verschiedene Arten von Shells zur Verfügung gestellt, um Aufgaben zu erledigen. Jede Schale hat einzigartige Eigenschaften. Daher gibt es viele Fälle, in denen eine Shell für bestimmte Anforderungen besser ist als die andere.

Aus diesem Grund ist es wichtig, dass wir uns der verschiedenen Arten von Shells bewusst sind, die in Linux verfügbar sind. In diesem Tutorial werden wir besprechen, was eine Shell ist und warum sie wichtig ist.

Außerdem werden wir verschiedene Arten von Shells in Linux untersuchen, um ihre Funktionen und Eigenschaften zu verstehen.

Was ist eine Shell und warum brauchen wir sie?

Immer wenn sich ein Benutzer beim System anmeldet oder ein Konsolenfenster öffnet, führt der Kernel eine neue Shell-Instanz aus. Der Kernel ist das Herzstück eines jeden Betriebssystems.

Es ist für das Kontrollmanagement und die Ausführung von Prozessen verantwortlich und stellt die ordnungsgemäße Nutzung der Systemressourcen sicher.

Eine Shell ist ein Programm, das als Schnittstelle zwischen einem Benutzer und dem Kernel fungiert. Es ermöglicht einem Benutzer, dem Kernel Befehle zu erteilen und Antworten von ihm zu erhalten. Über eine Shell können wir Programme und Dienstprogramme auf dem Kernel ausführen. Daher ist eine Shell im Kern ein Programm, das verwendet wird, um andere Programme auf unserem System auszuführen.

Die Möglichkeit, mit dem Kernel zu interagieren, macht Shells zu einem mächtigen Werkzeug. Ohne die Möglichkeit, mit dem Kernel zu interagieren, kann ein Benutzer nicht auf die Dienstprogramme zugreifen, die vom Betriebssystem seines Computers angeboten werden.

Lassen Sie uns die wichtigsten Shells verstehen, die für die Linux-Umgebung verfügbar sind.

Verschiedene Arten von Shells in Linux

Wenn Sie jetzt verstehen, was ein Kernel ist, was eine Shell ist und warum eine Shell für Linux-Systeme so wichtig ist, fahren wir mit dem Erlernen der verschiedenen Arten von Shells fort, die verfügbar sind.

Jede dieser Schalen hat Eigenschaften, die sie für eine bestimmte Art der Verwendung gegenüber anderen Schalen hocheffizient machen. Lassen Sie uns also die verschiedenen Arten von Shells in Linux zusammen mit ihren Eigenschaften und Merkmalen besprechen.

1. Die Bourne-Muschel (sh)

Die von Steve Bourne in den AT&T Bell Labs entwickelte Bourne-Shell gilt als die erste UNIX-Shell überhaupt. Es wird als sh bezeichnet. Es wurde aufgrund seiner kompakten Bauweise und seiner hohen Betriebsgeschwindigkeit immer beliebter.

Dies machte es zur Standard-Shell für Solaris OS. Es wird auch als Standard-Shell für alle Solaris-Systemverwaltungsskripts verwendet. Beginnen Sie hier mit dem Lesen über Shell-Scripting.

Die Bourne-Shell hat jedoch einige große Nachteile.

  • Es hat keine eingebaute Funktionalität, um logische und arithmetische Operationen zu handhaben.
  • Außerdem kann sich die Bourne-Shell im Gegensatz zu den meisten anderen Shell-Typen in Linux nicht an zuvor verwendete Befehle erinnern.
  • Es fehlen auch umfassende Funktionen, um eine angemessene interaktive Nutzung zu bieten.

Der vollständige Pfadname für die Bourne-Shell lautet /bin/sh und /sbin/sh. Standardmäßig wird die Eingabeaufforderung # verwendet für den Root-Benutzer und $ für die Nicht-Root-Benutzer.

2. Die GNU Bourne-Again-Shell (bash)

Die GNU Bourne-Again-Shell, besser bekannt als Bash-Shell, wurde entwickelt, um mit der Bourne-Shell kompatibel zu sein. Es enthält nützliche Funktionen von verschiedenen Arten von Shells in Linux, wie z. B. Korn-Shell und C-Shell.

Es ermöglicht uns, zuvor verwendete Befehle automatisch abzurufen und sie mit Hilfe der Pfeiltasten zu bearbeiten, im Gegensatz zur Bourne-Shell.

Der vollständige Pfadname für die GNU Bourne-Again-Shell ist /bin/bash. Standardmäßig wird die Eingabeaufforderung bash-VersionNumber# verwendet für den Root-Benutzer und bash-VersionNumber$ für die Nicht-Root-Benutzer.

3. Die C-Shell (csh)

Die C-Shell wurde an der University of California von Bill Joy entwickelt. Es wird als csh bezeichnet. Es wurde entwickelt, um nützliche Programmierfunktionen wie eingebaute Unterstützung für arithmetische Operationen und eine der C-Programmiersprache ähnliche Syntax zu enthalten.

Darüber hinaus wurde die Befehlshistorie integriert, die in verschiedenen Arten von Shells in Linux wie der Bourne-Shell fehlte. Ein weiteres hervorstechendes Merkmal einer C-Shell sind „Aliase“.

Der vollständige Pfadname für die C-Shell lautet /bin/csh. Standardmäßig wird die Eingabeaufforderung hostname# verwendet für den Root-Benutzer und hostname% für die Nicht-Root-Benutzer.

4. Die Korn-Shell (ksh)

Die Korn-Shell wurde in den AT&T Bell Labs von David Korn entwickelt, um die Bourne-Shell zu verbessern. Es wird als ksh bezeichnet. Die Korn-Shell ist im Wesentlichen eine Obermenge der Bourne-Shell.

Neben der Unterstützung von allem, was von der Bourne-Shell unterstützt würde, bietet es Benutzern neue Funktionalitäten. Es ermöglicht eine eingebaute Unterstützung für arithmetische Operationen und bietet gleichzeitig interaktive Funktionen, die der C-Shell ähneln.

Die Korn-Shell führt Skripte aus, die für die Bourne-Shell erstellt wurden, und bietet gleichzeitig eine String-, Array- und Funktionsmanipulation ähnlich der Programmiersprache C. Es unterstützt auch Skripte, die für die C-Shell geschrieben wurden. Außerdem ist es schneller als die meisten anderen Arten von Shells in Linux, einschließlich der C-Shell.

Der vollständige Pfadname für die Korn-Shell lautet /bin/ksh. Standardmäßig wird die Eingabeaufforderung # verwendet für den Root-Benutzer und $ für die Nicht-Root-Benutzer.

5. Die Z-Shell (zsh)

Die Z-Shell oder zsh ist eine sh-Shell-Erweiterung mit unzähligen Verbesserungen zur Anpassung. Wenn Sie eine moderne Shell wünschen, die alle Funktionen und noch viel mehr bietet, ist die zsh-Shell genau das, wonach Sie suchen.

Einige bemerkenswerte Features der z-Shell sind:

  • Erzeuge Dateinamen basierend auf gegebenen Bedingungen
  • Plugins und Designunterstützung
  • Index der eingebauten Funktionen
  • Befehlsabschluss
  • und viele mehr...

Lassen Sie uns die verschiedenen Shells in Linux, die wir in diesem Tutorial besprochen haben, in der folgenden Tabelle zusammenfassen.

Schale Vollständiger Pfadname Nach Root-Benutzer fragen Eingabeaufforderung für Nicht-Root-Benutzer
Bourne-Shell (sh) /bin/sh und /sbin/sh # $
GNU Bourne-Again-Shell (bash) /bin/bash bash-Versionsnummer# bash-Versionsnummer$
C-Shell (csh) /bin/csh # %
Kornschale (ksh) /bin/ksh # $
Z-Shell (zsh) /bin/zsh # %

Abschluss

Shells sind eines der leistungsstärksten Tools, die einem Linux-Benutzer zur Verfügung stehen. Ohne Shells ist es für eine Person praktisch unmöglich, die Merkmale und Funktionen zu nutzen, die der auf ihrem System installierte Kernel bietet.

Obwohl wir nur die am häufigsten verwendeten Arten von Shells in Linux behandelt haben, gibt es viele andere Shell-Typen, die es wert sind, erkundet zu werden.

Wir hoffen, dass dieses Tutorial Ihnen dabei helfen konnte, das Konzept von Shells sowie die Eigenschaften der verschiedenen Shell-Typen in Linux zu verstehen. Wenn Sie Feedback, Fragen oder Vorschläge haben, können Sie sich gerne in den Kommentaren unten an uns wenden.


Linux
  1. Linux vs. Unix:Was ist der Unterschied?

  2. Linux – Was sind die verschiedenen Möglichkeiten zum Festlegen von Dateiberechtigungen usw. unter Gnu/Linux?

  3. Linux – Wie finde ich heraus, welche Festplatten im System sind?

  4. Linux – Welche Entropiequellen werden vom Linux-Kernel verwendet?

  5. Linux – Was sind die Werte der Device Tree Interrupts-Eigenschaft?

Was ist die Shell unter Linux?

Was ist Subshell in Linux?

Was ist die Login-Shell in Linux?

Was ist der Kill-Befehl in Linux?

8 Arten von Linux-Shells

Chrome unter Linux - Fragen Sie den Browser ab, um zu sehen, welche Registerkarten geöffnet sind?