tee (Unix)

aus Wikipedia, der freien Enzyklopädie
Wechseln zu: Navigation, Suche
Die Funktionsweise von tee: Die Ausgaben des Kommandos ls -l werden über tee zum einen zu dem Pager less geleitet, zum anderen in die Datei file.txt. Das Stream-Verlaufsdiagramm sieht aus wie ein T-Stück, daher der Name.

tee ist ein Standard-Unix-Befehl. Sein Name leitet sich von dem T-Stück ab, mit dem Klempner eine Abzweigung in eine Leitung einbauen.

Der Befehl liest Daten von stdin und gibt sie nach stdout und in eine (neu anzulegende oder bestehende) Datei aus. Er wird benutzt, um Zwischenergebnisse innerhalb einer Pipe zu erhalten. Diese können zur Fehleranalyse herangezogen oder auch in anderen Pipes weiterverarbeitet werden.

Existenz und Funktionsumfang sowie Verhalten dieses Kommandos wird sowohl durch die Single Unix Specification (SUS)[1] wie auch den POSIX-Standard (bzw., damit gleichbedeutend, den IEEE-Standard 1003.1) genormt.

Dem Standard gemäß versteht tee zwei Optionen: Mit -a wird an die angegebene Datei angehängt (anstatt eine neue leere Datei zu eröffnen) und mit -i wird das Signal SIGINT ignoriert.

Der Befehl ist auch in den GNU core utilities enthalten.

Beispiel[Bearbeiten]

Dieses Beispiel filtert die Dateien und Verzeichnisse im Rootverzeichnis nach allen, die ein 'b' enthalten. Gleichzeitig wird eine Datei 'out.file' angelegt mit allen Dateien und Verzeichnissen im Rootverzeichnis.

 ls -l / | tee out.file | grep b

Weblinks[Bearbeiten]

Einzelnachweise[Bearbeiten]

  1. tee. Single Unix® Specification, Version 2. Open Group, 1997, abgerufen am 6. Mai 2013 (englisch).