Linux - Lo shell Linux - O shell Linux - Le shell Linux - Shell Linux - The shell

Einführung in Shell

Der Befehlsinterpreter ist die Schnittstelle zwischen Benutzer und Betriebssystem, daher sein englischer Name «shell», was bedeutet «Schale».

Le shell, une coquille entre l\'OS et l\'utilisateur

Die Shell ist also damit beauftragt der Vermittler zwischen Betriebssystem und Benutzer zu sein, dank der Kommandozeilen, die von dem Benutzer eingegeben werden. Seine Rolle besteht darin die Kommandozeilen zu lesen, deren Sinn zu interpretieren, das Kommando auszuführen, und das Ergebnis zu den Ausgängen zurückzuführen.

Shell ist also eine Ausführungsdatei, deren Aufgabe es ist die Befehle zu interpretieren, sie an das System weiter zu leiten und das Ergebnis zurückzuleiten. Es gibt mehrere Shells, die gängisten sind sh (genannt «Bourne shell»), bashBourne again shell»), cshC Shell»), TcshTenex C shell»), kshKorn shell») und zshZero shell»). Ihre Namen entsprechen meist dem Namen der Ausführung.

Jeder Benutzer besitz eine Shell als Standardvorgabe, die beim Öffnen einer Eingabaufforderung ausgeführt wird. Die Standardshellvorgabe wird in der Konfigurationsdatei, /etc/passwd in dem letzten Feld der Benutzerzeile, angegeben. Es ist möglich die Shell in einer Sitzung zu wechsel indem man einfach die Ausführungdatei ausführt, z.B. :

/bin/bash

Eingabeaufforderung (Prompt)

Die Shell initialisiert sich indem sie ihre globale Konfiguration liest (in einer Datei des Verzeichnisses /etc/), und dann die Benutzerkonfiguration liest (in einer versteckten Datei, deren Name mit einem Punkt beginnt, und die sich in dem Benutzerbasisverzeichnis befindet, d.h. /home/Benutzername/.Konfigurationsdatei), dann zeigt sie eine Eingabeaufforderung an (auf Englisch prompt) wie folgt :

machine:/repertoire/courant$
Als Standardvorgabe besteht in den meisten Shells der Prompt aus dem Namen der Maschine, gefolgt von einem Doppelpunkt (:), dem Arbeitsverzeichnis, und einem Zeichen, das den verbundenen Benutzertypen angibt  :
  • «$» gibt an dass es sich um einen normalen Benutzer handelt
  • «#» gibt an dass es sich um den Administrator handelt, genannt «root»

Der Begriff Kommandozeile

Ein Kommandozeile ist eine Zeichenkette, bestehend aus einem Kommando, welches einer Systemausführdatei entspricht oder einem Shell-Kommando, sowie die Options-Argumente (Parameter) :

ls -al /home/jf/
In dem folgenden Kommando ist ls der Name des Kommandos, -al und /home/jean-francois/sind die Argumente. Die Argumente die mit - beginnen, werden Optionen genannt. Für jedes Kommando gibt es meist eine gewisse Anzahl Optionen, die detailliert werden können, indem man die folgenden Befehle eingibt :
commande --help
commande -?
man commande

Standard-Eingänge/ Ausgänge

Bei der Ausführung eines Kommandos wird ein Prozess geschaffen. Dieser wird dann drei Datenflüsse öffnen :

  • stdin, genannt Standard-Eingabe, in dem der Prozss die Eingabedaten liest. Als Standardvorgabe entspricht stdin der Tastatur ; STDIN wird durch die Nummer 0 identifiziert ;
  • stdout, genannt Standard-Ausgabe, in dem der Prozess die Ausgabedaten schreibt. Als Standardvorgabe entspricht stdin dem Bildschirm ; STDOUT wird durch die Nummer 1 identifiziert ;
  • stderr, genannt Standardfehler, in dem der Prozss die Fehlermeldungen schreibt. Als Standardvorgabe entspricht stderr dem Bildschirm ; STDERR wird durch die Nummer 2 identifiziert ;

entrées-sorties standard : STDOUT, STDIN, STDERR

Wenn ein Programm ausgeführt wird, werden die Daten in Standardeinstellung also ab der Tastatur gelesen und das Programm schickt seine Ausgabe und seine Fehler zum Bildschirm, es ist aber auch möglich die Daten ab jedem beliebigen Eingabeperipheriegerät zu lesen, sogar ab einer Datei und den Ausgabe auf ein Peripherieanzeigegerät zu schicken, eine Datei usw.

Redirektion

Linux, wie jedes Unix-System, besitz Mechanismen mit denen die Standard-Eingänge/ Ausgänge zu Dateien umgelenkt werden können.

So ermöglicht die Benutzung des Zeichens «>» die Standardausgabe eines Kommandos welche sich links befindet, zu einer Datei umzulenken die sich rechts befindet :

ls -al /home/jf/ > toto.txt
echo "Toto" > /etc/monfichierdeconfiguration
Das folgende Kommando entspricht einer Dateikopie :
cat toto > toto2
Die Umleitung «>» hat zum Ziel eine neue Datei zu schaffen. Würde es also eine Datei mit gleichem Namen geben, so würde diese gelöscht. Der folgende Befehl erstellt einfach eine leere Datei :
> Datei
Die Verwendung eines doppelten Zeichens «>>» ermöglicht es die Standardausgabe zur Datei zu verketten, d.h.dass die Ausgabe an die Datei angehängt wird, ohne diese zu löschen.

In analoger Weise, gibt das Zeichen «<» eine Umleitung der Standardeingabe an. Das folgende Kommando schickt den Inhalt der Datei toto.txt als Eingabe des Kommandos cat, dessen einziges Ziel es ist, den Inhalt auf der Standardausgabe anzuzeigen (ein unnützes, aber lehrreiches Beispiel) :

cat < toto.txt

Die Verwendung der Umleitung «<<» ermöglicht zu guter Letzt an die Standardeingabe zu lesen, bis man der Kette die sich rechts befindet, begegnet. So wird folgendes Beispiel die Standardeingabe lesen, bis das Wort STOP angetroffen wird, dann wird das Ergebnis angezeigt :

cat << STOP

Kommunikationskanäle (Pipes)

Die Kanäle (auf Englisch «pipes", wörtlich Schlauch) sind Kommunikationsmechanismen die allen UNIX-Systemen eigen sind. Ein Kanal, symbolisiert durch einen vertikalen Strich (Zeichen «|»), ermöglicht es, eine Standardausgabe eines Kommandos einer Standardeingabe eines anderen Kommandos zuzuordnen, so wie ein Kanal auch eine Standardeingabe eines Befehls mit der Standardausgabe eines anderen in Verbindung setzen kann.

In folgendem Beispiel wird die Standardausgabe des Kommandos ls -al zu dem Programme sort geschickt, welches beauftragt ist, das Ergebnis nach alphabetischer Reihenfolge zu ordnen :

ls -al | sort

So ist es möglich eine gewisse Anzahl von Befehlen durch sich folgende Pipes zu verketten. In folgendem Beispiel zeigt das Kommando alle Dateien des Arbeitsverzeichnisses an, wählt die Zeilen die das Wort "zip" enthalten (mit dem Befehl grep) und zählt die Gesamtanzahl der Zeilen :

ls -l | grep zip | wc -l


Letzte Änderung am Mittwoch 1 April 2009 à 14:16:21.Das Dokument mit dem titel « Linux - Die Shell » aus Kioskea (de.kioskea.net) zur verfügung gestellt wird unter den bedingungen der Creative Commons lizenz. Können Sie ändern, Kopien dieser Seite, unter den Bedingungen der Lizenz, als diese Bewertung deutlich.
Beste Antworten für « Linux Die Shell » auf :
Linux - Userhandbuch Sehen erste Schritte des Administrators Wenn mehrere Personen Zugang zu einem System haben muss der Administrator die User verwalten. Hierfüf müssen die gebräuchlichen Befehle und die zu konfigurierenden Dateien bekannt sein.Die wichtigen Datein...
Linux - Verwaltung der Benutzer Sehen Erster Schritt des Administrators Wenn diverse Personen Zugang zu einem System haben, ist es notwendig dass der Systemadministrator die Benutzer verwaltet. Dafür müssen die gebräuchlichen Befehle und die zu konfigurierenden Dateien bekannt sein....
Linux Befehle Sehen Tabelle der wichtigsten Linux-Befehle Befehl Beschreibung DOS-Äquivalent ls Inhaltsverzeichnis des Registers dir cd wechselt das Registers cd cd .. Übergeordnetes Register cd.. mkdir Erstellen eines...
Wie kennt man seine IP-Adresse? SehenDie folgende ein paar Kommandos erlauben Ihnen IP Adressen von Ihrem Personalcomputer zu finden. kennen Seine IP-Adresse Unter Windows 2000 / Windows XP / Windows Vista Unter Windows 95 / Windows 98 Unter Linux Warum einige Website mir eine...
USB-Stick formatieren SehenUSB-Sticks müssen formatiert werden mit dem Dateisystem FAT (FAT16 und FAT32), um von allen gängigen Betriebssystemen verwendet werden zu können. Unter Windows Aber, für einen USB-Stick mit Speicherkapazität von mehr als 32 MB, bietet Windows XP...
Installation eines FTP-Servers unter Windows SehenSchnelle Version Version etwas weniger schnell (aber nicht eigene) Version eigener Server Link Mehr als das: Sie können, egal wo auch immer Sie sich befinden, zu Ihrem FTP-Server gelangen Notizen Schnelle Version Schnell, ich möchte...
UNIX-System - SHELL SehenEinführung in Shell Der Befehlübersetzer ist die Benutzeroberfläche des Awendungssystems, daher sein englischer Name «shell», was bedeutet « Muschel». Shell ist mit Hilfe der Befehlsleitungen ein Vermittler zwischen dem Anwendungssystem und dem...
Linux - Editor Vi SehenEinleitung zu Vi Vi ist einer der populärsten Texteditoren unter den Systemen des Typs Unix (mit Emacs und pico) trotz seiner sehr begrenzten Ergonomie. Unter Linux gibt es eine freie Version von Vi genannt Vim (Vi Improved). Vi (ausgesprochen...
Linux: Systemvorbereitung vor der Installation Sehennotwendiges Material In Minimalkonfiguration benötig Linux nicht den modernsten Computer : mindestens einen 386SX-Prozessor 4Mo RAM-Speicherkapazität (8Mo sind empfehlenswert) ein Festplattenkontroller und eine Platte mit 20Mo freier...