In Unix und Linux gibt es mehrere „Shells“. Shell bezieht sich auf ein spezielles Benutzerprogramm, das seinen Benutzern eine Schnittstelle zur Nutzung von Betriebssystemdiensten bietet.
Zwei der bekanntesten Shells sind KSH und Bash. Dies sind die Schalen des Bereichs der Computerprogrammierung. Diese beiden haben unterschiedliche Funktionen und Befehle. Diese beiden Schalen sind miteinander verbunden.
Key Take Away
- KSH (KornShell) ist eine ältere Shell, während BASH (Bourne-Again SHell) eine neuere Shell mit zusätzlichen Funktionen ist.
- BASH ist die Standard-Shell für die meisten Linux-Distributionen, während KSH in Unix-Systemen häufiger vorkommt.
- BASH ist mit KSH-Skripten kompatibel, unterstützt jedoch nicht alle BASH-Funktionen.
KSH gegen Bash
KSH ist ein Befehl Dolmetscher und mit POSIX kompatible Programmiersprache. Bash ist eine verbesserte Version der Bourne-Shell, die in den 1970er Jahren von Steve Bourne entwickelt wurde und heute die Standard-Shell in den meisten Linux-Distributionen ist. Es unterstützt viele Funktionen der Korn-Shell und verfügt über zusätzliche Funktionen.
KSH bezieht sich auf eine Unix-Shell, die Anfang der 1980er Jahre von David Korn entwickelt wurde. Es wurde auf Wunsch der Benutzer von Bell Lab entwickelt und enthält mehrere Funktionen der C-Shell.
KSH ist auch abwärtskompatibel. Es gibt hauptsächlich fünf Versionen des KSH-PDKSH, KSH, MKSH, KSH93 und KSH88.
Bash hingegen bezieht sich auf den Klon der Bourne-Shell. Es wurde von der FSF (Freeware Software Foundation) entwickelt und unter der General Public License (GPL) lizenziert und geschrieben.
Bash Shell wurde viele Jahre später von KSH entwickelt, also ist es die neuere Shell, die im Vergleich zu der von KSH mehrere neue Ressourcen hat.
Vergleichstabelle
Vergleichsparameter | KSH | Bash |
---|---|---|
Leistung | Bei der Ausführung von Befehlen und Skripten bietet KSH im Vergleich zu Bash eine viel bessere Leistung. | Bei der Ausführung von Befehlen und Skripten ist die Leistung der Bash ordentlich. |
Programmierfunktionen | KSH bietet im Vergleich zu Bash überlegene und viel mehr Programmierfunktionen. | Die Programmierfunktionen von Bash sind im Vergleich zu KSH unterlegen. Allerdings hat Bash auch viele Programmierfunktionen. |
Befehl | KSH verwendet zum Drucken der Ausgabe den Befehl print, der besser ist als der von Bash. | Bash verwendet den Echo-Befehl zum Drucken der Ausgabe. |
Downloads | KSH wurde früher als Bash entwickelt, daher gibt es in KSH im Vergleich zu Bash nur wenige Ressourcen. | Bash ist eine neue Shell und hat daher viele Ressourcen und ist im Vergleich zu KSH beliebter. |
Scripts | Aufgrund der älteren Syntax sind die Skripte eines KSH weniger lesbar. | Für eine neuere Syntax sind die Skripte einer Bash lesbar und verständlich. |
Was ist KSH?
KSH oder die Korn-Shell bezieht sich auf die UNIX-Shell, die Anfang der 1980er Jahre von Sir David Korn entwickelt wurde. KSH wurde vor vielen Jahren entwickelt, vor der Erstellung von Bash.
Da es vor vielen Jahren entwickelt wurde, hat es im Vergleich zu Bash weniger Ressourcen. Infolgedessen verwenden nur noch sehr wenige Menschen KSH.
Es wurde als kombinierte umfassende Version anderer wichtiger UNIX-Shells entwickelt. Es enthielt alle Funktionen von Tab C-Shell und C-Shell sowie die Skriptsprachenfunktionen der Bourne-Shells.
Die Bourne-Schale galt damals als die beste Schale in Bezug auf die Effizienz. Die beliebtesten Unix-Shells sind C-Shell, Bourne-Shell und Korn-Shell.
KSH ist ein Mitglied der Bourne-Shell-Familie und sehr einfach zu bedienen. Infolgedessen bevorzugen unerfahrene Benutzer KSH.
Der 'r history'-Befehl des KSH ist sehr gut, da er seinen Benutzern ermöglicht, sehr schnell zu den älteren Befehlen zurückzukehren. Der Druckbefehl des KSH beim Drucken der Ausgabe ist sehr effizient.
KSH bietet auch hervorragende Programmierfunktionen.
Die Binärgröße des KSH-Interpreters beträgt 1.6 MB. Aufgrund der älteren Syntax sind die Skripte eines KSH weniger lesbar. KSH hat auch einige assoziative Arrays und kann die Schleifensyntax effizient handhaben.
Was ist Bash?
Bash oder Bourne Again Shell war eine aktualisierte Version des Bourne Shell-Programms mit dem Namen „sh“, das von Brian Fox geschrieben wurde.
Es wurde von der FSF (Freeware Software Foundation) entwickelt und unter der General Public License (GPL) lizenziert und geschrieben.
Bash hat viele Funktionen der Bourne Shell sowohl für interaktive als auch für Programmierzwecke verbessert. Es enthält Funktionen wie Befehlsverlauf, Bearbeiten der Befehlszeile, Tastenkombinationen und vieles mehr.
Für das Mac OS von Apple und den meisten Linux fungiert Bash als Standard-Login-Shell. Es kann auch von Windows 10 aus darauf zugegriffen werden. In vielen Linux-Modi ist es jetzt eine Standard-Shell.
Bash bezieht sich auf einen Befehlszeileninterpreter, der in einem Textfenster ausgeführt wird. Benutzer interpretieren Befehle zur Durchführung mehrerer Aktionen.
Der Satz dieser verschiedenen Befehle wird als Shell-Skript bezeichnet (als eine Reihe innerhalb einer Datei). Bash liest diese Befehle aus dem Shell-Skript und führt sie aus, um mehrere Aktionen auszuführen.
Im Vergleich zum KSH ist Bash populärer, neuer und hat auch mehr Ressourcen, da es sich in letzter Zeit entwickelt hat. Infolgedessen ist es einfach, mit Bash zu lernen.
Die beiden wichtigsten Vorteile der Bash sind die einfache Methode der Eingabeaufforderung zur Anzeige des aktuellen Verzeichnisses und die Vervollständigung des Tabs.
Hauptunterschiede zwischen KSH und Bash
- Bei der Ausführung von Befehlen und Skripten bietet KSH im Vergleich zu Bash eine viel bessere Leistung, bei der Ausführung von Befehlen und Skripten hingegen ist die Leistung der Bash anständig.
- KSH bietet im Vergleich zu Bash überlegene und viel mehr Programmierfunktionen. Die Programmierfunktionen von Bash sind im Vergleich zu KSH unterlegen. Allerdings hat Bash auch viele Programmierfunktionen.
- KSH verwendet zum Drucken der Ausgabe den Befehl print, der besser ist als der von Bash. Bash verwendet den Echo-Befehl zum Drucken der Ausgabe.
- KSH wurde früher als Bash entwickelt, daher gibt es in KSH im Vergleich zu Bash nur wenige Ressourcen. Bash ist eine neue Shell und hat daher viele Ressourcen und ist im Vergleich zu KSH beliebter.
- Für eine ältere Syntax sind die Skripte einer KSH weniger lesbar, aber für eine neuere Syntax sind die Skripte einer Bash lesbar und verständlich.
- https://scholar.google.com/scholar?hl=en&as_sdt=0%2C5&q=korn+shell&oq=korn+she#d=gs_qabs&u=%23p%3Dzna0kMa6N3MJ
- https://scholar.google.com/scholar?hl=en&as_sdt=0%2C5&q=Bash&btnG=#d=gs_qabs&u=%23p%3DYFtvOe41MKUJ
Letzte Aktualisierung: 11. Juni 2023
Sandeep Bhandari hat einen Bachelor of Engineering in Computers von der Thapar University (2006). Er verfügt über 20 Jahre Erfahrung im Technologiebereich. Er interessiert sich sehr für verschiedene technische Bereiche, darunter Datenbanksysteme, Computernetzwerke und Programmierung. Sie können mehr über ihn auf seinem lesen Bio-Seite.
Der Ressourcenvergleich hat mir geholfen, die Unterschiede besser zu verstehen, vielen Dank!
Der detaillierte Vergleich von KSH und Bash ist sehr nützlich, vielen Dank für das Teilen.
Die Erklärung war fantastisch, sehr klar und prägnant!
Ich stimme zu, das war ein ausgezeichneter Beitrag!
Es ist unglaublich, wie viele Informationen in diesem Beitrag enthalten sind. Vielen Dank!
Ich fand den Leistungsvergleich zwischen KSH und Bash sehr interessant, toller Beitrag!
Ich schätze den Aufwand, der in die Bereitstellung eines so informativen Artikels gesteckt wurde, sehr.