Welche verschiedenen Arten von Shells gibt es in Linux?

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

Dies macht es wichtig für uns, über die verschiedenen in Linux verfügbaren Shells Bescheid zu wissen. In diesem Tutorial werden wir besprechen, was eine Shell ist und warum sie wichtig ist. Darüber hinaus werden wir verschiedene Arten von Shells in Linux erkunden, um ihre Funktionen und Eigenschaften zu verstehen.

Was ist eine Shell und warum brauchen wir sie?

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

Er ist verantwortlich für die Steuerung, Verwaltung und Ausführung von Prozessen sowie für die ordnungsgemäße Nutzung der Systemressourcen.

Eine Shell ist ein Programm, das als Schnittstelle zwischen einem Benutzer und dem Kernel fungiert. Es ermöglicht einem Benutzer, Befehle an den Kernel zu geben 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 das Betriebssystem seiner Maschine bietet.

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 so wichtig für Linux-Systeme ist, lassen Sie uns fortfahren und über die verschiedenen Arten von Shells lernen, die verfügbar sind. Jede dieser Shells hat Eigenschaften, die sie für eine bestimmte Art von Nutzung über andere Shells hinweg hoch effizient machen. Lassen Sie uns also die verschiedenen Arten von Shells in Linux zusammen mit ihren Eigenschaften und Merkmalen diskutieren.

1. Die Bourne-Shell (sh)

Entwickelt bei den AT&T Bell Labs von Steve Bourne, gilt die Bourne-Shell als die erste UNIX-Shell überhaupt. Sie wird als sh bezeichnet. Sie erlangte Popularität aufgrund ihrer kompakten Natur und hohen Geschwindigkeiten.

Dies machte sie zur Standard-Shell für Solaris OS. Sie wird auch als Standard-Shell für alle Solaris-Systemadministrations-Skripte verwendet.

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

  • Sie verfügt nicht über integrierte Funktionen zum Umgang mit logischen und arithmetischen Operationen.
  • Auch kann die Bourne-Shell im Gegensatz zu den meisten anderen Shells in Linux zuvor verwendete Befehle nicht erinnern.
  • Ihr fehlen auch umfassende Funktionen für eine ordnungsgemäße interaktive Nutzung.

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

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

Bekannter als die Bash-Shell, wurde die GNU Bourne-Again-Shell entworfen, um mit der Bourne-Shell kompatibel zu sein. Sie übernimmt nützliche Funktionen von verschiedenen Arten von Shells in Linux, wie der Korn-Shell und der C-Shell. Sie ermöglicht es uns, zuvor verwendete Befehle automatisch abzurufen und sie mit Hilfe von Pfeiltasten zu bearbeiten, im Gegensatz zur Bourne-Shell. Der vollständige Pfadname für die GNU Bourne-Again-Shell ist /bin/bash. Standardmäßig verwendet sie das Prompt bash-VersionNumber# 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 erstellt. Sie wird als csh bezeichnet. Sie wurde entwickelt, um nützliche Programmierfunktionen wie integrierte Unterstützung für arithmetische Operationen und eine Syntax, die der C-Programmiersprache ähnelt, einzubeziehen. Darüber hinaus integrierte sie die Befehlsgeschichte, die bei verschiedenen Arten von Shells in Linux wie der Bourne-Shell fehlte. Ein weiteres prominentes Merkmal einer C-Shell sind „Aliasse“. Der vollständige Pfadname für die C-Shell ist /bin/csh. Standardmäßig verwendet sie das Prompt hostname# für den Root-Benutzer und hostname% für die Nicht-Root-Benutzer.

4. Die Korn-Shell (ksh)

Die Korn-Shell wurde bei den AT&T Bell Labs von David Korn entwickelt, um die Bourne-Shell zu verbessern. Sie wird als ksh bezeichnet. Die Korn-Shell ist im Wesentlichen eine Obermenge der Bourne-Shell. Neben der Unterstützung von allem, was durch die Bourne-Shell unterstützt würde, bietet sie den Benutzern neue Funktionalitäten. Sie ermöglicht integrierte Unterstützung für arithmetische Operationen und bietet interaktive Funktionen, die denen der C-Shell ähnlich sind. Die Korn-Shell führt Skripte aus, die für die Bourne-Shell gemacht wurden, während sie String-, Array- und Funktionsmanipulationen ähnlich der C-Programmiersprache bietet. Sie unterstützt auch Skripte, die für die C-Shell geschrieben wurden. Darüber hinaus ist sie schneller als die meisten anderen Arten von Shells in Linux, einschließlich der C-Shell. Der vollständige Pfadname für die Korn-Shell ist /bin/ksh. Standardmäßig verwendet sie das Prompt # für den Root-Benutzer und $ für die Nicht-Root-Benutzer.

5. Die Z-Shell (zsh)

Die Z-Shell oder zsh ist eine Erweiterung der sh-Shell mit vielen Verbesserungen für die Anpassung. Wenn Sie eine moderne Shell suchen, die alle Funktionen und vieles mehr hat, ist die zsh-Shell genau das Richtige für Sie.

Einige bemerkenswerte Merkmale der z-Shell umfassen:

  • Generieren von Dateinamen basierend auf gegebenen Bedingungen
  • Unterstützung für Plugins und Themes
  • Index von eingebauten Funktionen
  • Befehlsvervollständigung
  • und viele mehr …

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

Shell Vollständiger Pfadname Prompt für Root-Benutzer Prompt für Nicht-Root-Benutzer
Bourne-Shell (sh) /bin/sh und /sbin/sh # $
GNU Bourne-Again-Shell (bash) /bin/bash bash-VersionNumber# bash-VersionNumber$
C-Shell (csh) /bin/csh hostname# hostname%
Korn-Shell (ksh) /bin/ksh # $
Z-Shell (zsh) /bin/zsh <hostname># <hostname>%

Abschluss

Shells sind eines der mächtigsten Werkzeuge, die einem Linux-Benutzer zur Verfügung stehen. Ohne Shells ist es praktisch unmöglich für eine Person, die Funktionen und die Funktionalität zu nutzen, die das auf ihrem System installierte Kernel bietet.

Während 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 geholfen hat, das Konzept der Shells zu verstehen, zusammen mit den Eigenschaften der verschiedenen Arten von Shells in Linux.

Kostenlosen Account erstellen

Registrieren Sie sich jetzt und erhalten Sie Zugang zu unseren Cloud Produkten.

Das könnte Sie auch interessieren: