Shell als Benutzeroberfläche

Zeichenorientierte und grafische Benutzerumgebungen

Als die Shell («Muschel») wird die meistens sichtbare Benutzeroberfläche mit der Benutzerumgebung bezeichnet. Diese ist bei jedem Betriebssystem unterschiedlich, es gibt jedoch zwei grundsätzliche Unterschiede:
  • kommandzeilenorientiert mit Eingabeaufforderung
  • grafische Umgebung / Oberfläche (GUI)

Kommandozeile

Der Lernaufwand bei der kommandozeilenorientierten Verwendung ist ein vielfaches höher als bei einem GUI. Auf der Kommandozeile wartet der Rechner bzw. der Kommandointerpreter hinter dem Prompt geduldig auf den nächsten Befehl, gibt von sich aus keine Hilfe und «verdankt» Fehleingaben meistens auch nur mit knappen Kommentaren. Kommentare, die von Programmierern entwickelt wurden und meistens auch nur von Technikern verstanden werden.

Die Arbeit auf der Kommandozeile erfolgt somit über die Eingabe von einzelnen Befehlen und Parametern (jeweils getrennt durch ein Trennzeichen wie beispielsweise '/') nach einem sogenannten Prompt. Das Prompt-Symbol wird auch Bereitschaftszeichen genannt, es stellt die Bereitschaft für den nächsten Befehl dar:

C:\Programme\Microsoft ActiveSync>dir m*.* /s /p
 Datenträger in Laufwerk C: ist System
 Volumeseriennummer: DC73-8D7A

 Verzeichnis von C:\Programme\Microsoft ActiveSync

15.11.2005  20:14           118'784 MailSync.dll
...
04.01.2005  11:27               120 Mobiles Gerät.lnk
06.12.2004  13:07           128'000 msconv97.dll
14.06.2005  18:12           499'712 msvcp71.dll
06.12.2004  13:07           259'072 mswrd832.cnv
              11 Datei(en)      3'577'144 Bytes

     Anzahl der angezeigten Dateien:
              11 Datei(en)      3'577'144 Bytes
               0 Verzeichnis(se), 39'025'475'584 Bytes frei

C:\Programme\Microsoft ActiveSync>_

Bei allen aktuellen Betriebssystemen (Windows, LINUX, Mac OS X usw.) stehen kommandozeilenorientierte Benutzeroberflächen zur Verfügung, allerdings werden diese als Eingabefenster auf einem Desktop verwendet. Personen, welche mit Kommandozeilen umgehen können schätzen die Möglichkeiten der Kommandozeile zwischendurch als effiziente Arbeits-Unterstützung.

Ein Kommandozeilenfenster unter Windows Vista

Das Bild oben zeigt beispielhaft ein Kommandozeilenfenster unter Windows Vista.

Grafische Benutzeroberfläche

Im Gegensatz zu einer Kommandozeile bietet eine grafische Benutzeroberfläche (GUI)  oder Shell eine für häufiges Arbeiten sehr angenehme Umgebung an.

Grafischer Desktop - die Shell unter Windows Vista

Aktuelle Betriebssysteme wie Windows, Mac OS X oder LINUX kombinieren die beiden Betriebsmodi. Auf der grafischen Oberfläche kann der Anwender ein Kommandozeilen-Fenster öffnen und verfügt so auch auf dem GUI über eine Kommando-Shell.

Windows
Bei Windows wird die grafische Benutzerschnittstelle durch den Windows-Explorer in der Funktion des Desktop dargestellt.

Für die kommandoorientierte Shell wird von Windows eine Instanz des Programmes CMD.EXE gestartet, der Kommandozeilen-Interpreter CMD.EXE wird im Fenster zur Verfügung gestellt.

UNIX
Bei UNIX-Systemen hat die Shell mit dem kommandozeilenorientierten Modus noch eine andere Bedeutung als bei Windows. Dies hauptsächlich deshalb, weil UNIX-Systeme häufig auch im Server-Betrieb mit automatisierenden Scripts eingesetzt werden. Eine Benutzeroberfläche mit Fenstertechnik wird bei UNIX-Systemen als X-Window-System bezeichnet. Für die grafische Darstellung wird ein Server bzw. Dienst gestartet, der so genannte X-Server.

Der X-Server kann mehrere Terminals gleichzeitig bedienen, ein «Terminal» ist dabei eine Benutzer-Sitzung (Session) auf einem lokalen Rechner oder einem entfernten Rechner (verbunden über das Netzwerk bzw. das Internet) sein.

In der UNIX-Welt gibt es zahlreiche verschiedene Shells, die auch während des Betriebes vom Benutzer gewechselt werden. Dies hauptsächlich weil beispielsweise die C-Shell (CSH) andere Befehle untersützt als die TC-Shell (TCSH). Benötigt der Benutzer oder Administrator einen speziellen Befehl, so startet er flugs die andere Shell, führt den Befehl aus und kehrt mit dem EXIT-Kommando zur Ur-Shell zurück.

LINUX
Bei LINUX ist die Technik der Shells praktisch identisch wie bei UNIX-Systemen, auch sie betreiben die GUI-Shell mit einem X-Server. Bei LINUX im Trend sind zur Zeit die Oberfläche KDE und Gnome.

Bei LINUX ist die Standard-Shell auf der Kommandozeile die BASH, die «Bourne Again Shell», entwickelt von Andy Bourne.

Automatisierung

Zahlreiche Arbeiten an einem Computer fallen regelmässig an, eine Automatisierung drängt sich auf. Automatisierungen werden in so genannten Scripts erstellt. Das Script wird von der Shell interpretiert, das bedeutet dass die Shell Befehl für Befehl aus dem Script liest in die Maschinensprache übersetzt und so ausführt.

Bei UNIX-Systemen oder LINUX werden diese Scripts deshalb Shell-Scripts genannt, bei DOS oder Windows-Systemen ist von Batch-Dateien die Rede.