tee (Unix)

aus Wikipedia, der freien Enzyklopädie
Dies ist eine alte Version dieser Seite, zuletzt bearbeitet am 16. Januar 2016 um 10:32 Uhr durch Messerjokke79 (Diskussion | Beiträge) (→‎Einleitung: Typo/Umbrüche). Sie kann sich erheblich von der aktuellen Version unterscheiden.
Zur Navigation springen Zur Suche springen
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-Kommando. 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] als auch durch den POSIX-Standard genormt, entsprechend des IEEE-Standard 1003.1 aus dem Jahr 1990.

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

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

Einzelnachweise

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