09.04.2014 Aufrufe

Linux Essentials//Die Einsteiger-Zertifizierung des LPI - Linup Front ...

Linux Essentials//Die Einsteiger-Zertifizierung des LPI - Linup Front ...

Linux Essentials//Die Einsteiger-Zertifizierung des LPI - Linup Front ...

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

8.2 Filterkommandos 115<br />

Bild 8.2: Das Kommando tee<br />

$ cut -d: -f1 /etc/passwd | sort | pr -2 >userlst<br />

<strong>Die</strong>se Kommando-Pipeline entnimmt zunächst der Systemdatei /etc/passwd alle<br />

Benutzernamen (die in der ersten durch »:« getrennten Spalte stehen), sortiert diese<br />

alphabetisch und schreibt sie dann zweispaltig in die Datei userlst. <strong>Die</strong> hier benutzten<br />

Kommandos werden übrigens im Rest dieses Kapitels genauer beschrieben.<br />

Manchmal ist es sinnvoll, den Datenstrom innerhalb einer Kommando-Pipeline<br />

an einer bestimmten Stelle abzuspeichern, etwa weil das dortige Zwischen- Zwischenergebnis abspeichern<br />

ergebnis auch für andere Arbeiten von Interesse ist. Der Befehl tee führt eine Verzweigung<br />

<strong>des</strong> Datenstroms herbei, indem dieser verdoppelt und je ein Strom in<br />

eine Datei sowie an das nächste Kommando geleitet wird. Der Name dieses Kommandos<br />

(lautmalerisch für den Buchstaben »T«) lässt sich leicht aus Bild 8.2 herleiten<br />

– oder Sie denken an ein »T-Stück« in der »Pipeline« …<br />

<strong>Die</strong> Anweisung tee ohne Parameter legt die gewünschte Datei neu an oder<br />

überschreibt eine vorhandene; mit -a (engl. append, »anhängen«) lässt sich die Ausgabe<br />

an das Ende einer bestehenden Datei anfügen.<br />

$ ls -laF | tee liste | less<br />

total 7<br />

drwxr-xr-x 12 hugo users 1024 Aug 26 18:55 ./<br />

drwxr-xr-x 5 root root 1024 Aug 13 12:52 ../<br />

drwxr-xr-x 3 hugo users 1024 Aug 20 12:30 fotos/<br />

-rw-r--r-- 1 hugo users 449 Sep 6 13:50 inhalt<br />

-rw-r--r-- 1 hugo users 15811 Aug 13 12:33 pingu.gif<br />

-rw-r--r-- 1 hugo users 14373 Aug 13 12:33 hobby.txt<br />

-rw-r--r-- 2 hugo users 3316 Aug 20 15:14 chemie.txt<br />

In diesem Beispiel wird der Inhalt <strong>des</strong> aktuellen Verzeichnisses sowohl in die Datei<br />

liste geschrieben als auch auf dem Bildschirm ausgegeben. (<strong>Die</strong> Datei liste ist<br />

noch nicht in der Ausgabe von ls zu sehen, da sie erst später von tee angelegt wird<br />

– ein Unterschied zur Ausgabeumlenkung der Shell.)<br />

Übungen<br />

C<br />

8.6 [!2] Wie würden Sie dasselbe Zwischenergebnis gleichzeitig in mehrere<br />

Dateien schreiben?<br />

8.2 Filterkommandos<br />

Eine der Grundlagen von Unix – und damit <strong>Linux</strong> – ist das »Werkzeugkasten- Werkzeugkastenprinzip<br />

Copyright © 2012 <strong>Linup</strong> <strong>Front</strong> GmbH

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!