6 Grundlagen aus Anwendersicht
6 Grundlagen aus Anwendersicht
6 Grundlagen aus Anwendersicht
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
Pipes 7.9<br />
apropos<br />
ar<br />
...<br />
Listing 7.55 Pipe zwischen ls und more<br />
Probieren Sie es einmal <strong>aus</strong> – eine Seite weiter »blättern« Sie durch Drücken der<br />
Leertaste.<br />
Es ist übrigens auch möglich, mehrere Pipes in einem Befehl zu verwenden. Dies<br />
könnte dann beispielsweise so <strong>aus</strong>sehen:<br />
Mehrere Pipes<br />
user$ ls -l | awk '{ print $5 }' | sort | uniq<br />
Listing 7.56 Mehrere Pipes<br />
Die Standardfehler<strong>aus</strong>gabe (STDERR) wird nicht über Pipes weitergeleitet. Dies kann<br />
man jedoch umgehen, indem man STDERR an STDOUT anhängt: ProgrammA 2>&1 |<br />
ProgrammB<br />
7.9.1 Duplizieren der Ausgabe mit tee<br />
Manchmal kommt es vor, dass man die Ausgabe eines Programms sowohl in eine<br />
Datei umleiten als auch gleichzeitig auf dem Bildschirm <strong>aus</strong>geben möchte. Hier<br />
schafft das Programm tee Abhilfe. tee gibt die ihm eingegebene bzw. eingeleitete<br />
Ausgabe auf dem Bildschirm und in einer Datei <strong>aus</strong>.<br />
user$ ls | tee log.txt<br />
CVS<br />
Makefile<br />
TODO<br />
ZEITPLAN<br />
anhg_komref.tex<br />
...<br />
Listing 7.57 Pipes mit tee<br />
7.9.2 Named Pipes (FIFOs)<br />
Named Pipes (sogenannte FIFOs (First In First Out)) erweitern die Fähigkeiten einer<br />
Pipe. Eine FIFO muss zunächst als Datei im Dateisystem erzeugt werden. Dies wird<br />
mit dem Programm mkfifo bewerkstelligt. Der Vorteil gegenüber einer Pipe ist<br />
dabei, dass mehrere Prozesse diese FIFO verwenden können.<br />
239