OnWorks Linux- und Windows-Online-WorkStations

Logo

Kostenloses Online-Hosting für WorkStations

<Zurück | Inhalte | Weiter>

Do, 28. Februar 20:23:07 MEZ 2002

Das Datum Der Befehl würde normalerweise die letzte Zeile auf dem Bildschirm anzeigen. Jetzt wird es an die Datei angehängt Wunschliste.


Image


5.2. Erweiterte Umleitungsfunktionen


5.2.1. Verwendung von Dateideskriptoren


Es gibt drei Arten von E/A, die jeweils über eine eigene Kennung verfügen, die als Dateideskriptor bezeichnet wird:


• Standardeingabe: 0

• Standardausgabe: 1

• Standardfehler: 2


Wenn in den folgenden Beschreibungen die Dateideskriptornummer weggelassen wird und das erste Zeichen des Umleitungsoperators < ist, bezieht sich die Umleitung auf die Standardeingabe (Dateideskriptor 0). Wenn das erste Zeichen des Umleitungsoperators > ist, bezieht sich die Umleitung auf die Standardausgabe (Dateideskriptor 1).


Einige praktische Beispiele sollen dies verdeutlichen:


ls> dirliste 2> & 1


leitet sowohl die Standardausgabe als auch die Standardfehlerausgabe an die Datei weiter dirliste, während der Befehl


ls 2>&1 > dirliste


leitet nur die Standardausgabe an dirliste. Dies kann für Programmierer eine nützliche Option sein.


Hier wird es ziemlich kompliziert. Verwechseln Sie die Verwendung des kaufmännischen Und-Zeichens hier nicht mit der Verwendung in Abschnitt 4.1.2.1, wo das kaufmännische Und-Zeichen zum Ausführen eines Prozesses im Hintergrund verwendet wird. Hier dient es lediglich als Hinweis darauf, dass es sich bei der folgenden Nummer nicht um einen Dateinamen, sondern um einen Speicherort handelt, auf den der Datenstrom verweist. Beachten Sie außerdem, dass das Größer-als-Zeichen nicht durch Leerzeichen von der Nummer des Dateideskriptors getrennt werden darf. Wenn es getrennt würde, würden wir die Ausgabe wieder auf eine Datei verweisen. Das folgende Beispiel zeigt dies:


[nancy@asus /var/tmp]$ ls 2> tmp


[nancy@asus /var/tmp]$ ls -l tmp

-rw-rw-r-- 1 nancy nancy 0 7. September 12:58 tmp


[nancy@asus /var/tmp]$ ls 2 > tmp

ls: 2: Keine solche Datei oder kein solches Verzeichnis

[nancy@asus /var/tmp]$ ls 2> tmp


[nancy@asus /var/tmp]$ ls -l tmp

-rw-rw-r-- 1 nancy nancy 0 7. September 12:58 tmp


[nancy@asus /var/tmp]$ ls 2 > tmp

ls: 2: Keine solche Datei oder kein solches Verzeichnis

Der erste Befehl, der Nancy ausgeführt wird, ist korrekt (obwohl keine Fehler generiert werden und daher die Datei, in die der Standardfehler umgeleitet wird, leer ist). Der zweite Befehl erwartet das 2 ist ein Dateiname, der in diesem Fall nicht existiert, daher wird ein Fehler angezeigt.


Alle diese Funktionen werden auf den Bash-Infoseiten ausführlich erläutert.


Image


Top OS Cloud Computing bei OnWorks: