Tee-Time

Praktisch in Zusammenhang mit komplexen Pipelines ist das Tool tee. Der Name leitet sich aber nicht vom Heißgetränk ab, sondern vom "T-Stück" – etwa als Verbinder und Abzweig zwischen zwei Rohrleitungen. Das Kommando tee erwartet Daten aus der Standardeingabe und reicht sie unverändert an die Standardausgabe durch – kopiert sie aber gleichzeitig in die angegebene Datei. Die allgemeine Syntax von tee lautet:

tee [-option] datei

Das T-Stück können Sie über eine Pipe zwischen zwei Befehlen einfügen. tee nimmt dann die Ausgabe des ersten Befehls entgegen, leitet sie in eine Datei und zusätzlich an das nächste Kommando weiter:

huhn@asteroid:~$ who | tee eingeloggt.txt | grep huhn
huhn     :0           Apr 29 13:45

Hier schaut der Befehl who zunächst nach, wer auf dem System eingeloggt ist. Die Ausgabe durchsucht der grep-Befehl nach "huhn". Das in der Mitte eingefügte Kommando tee sorgt dafür, dass die who-Ausgabe vorher in der Datei eingeloggt.txt landet.

Der Befehl tee kennt zwei interessante Optionen: Mit -a ("append") hängen Sie Daten an eine bereits bestehende Datei an. Ohne diese Option überschreibt tee diese bei jedem neuen Aufruf. Die Option -i verhindert, dass sich tee beim Auftreten von Interrupts ([Strg-c]) im Datenstrom beendet.

tee kommt häufig zum Einsatz, wenn viele durch Pipes verbundene Kommandos im Einsatz sind. Eine Zwischenspeicherung von einzelnen Ausgaben in temporäre Dateien kann beim Aufspüren und Beheben von Fehlern in der Befehlskette helfen. Läuft alles glatt, können die T-Stücke einfach herausgenommen werden. Eine weitere Einsatzmöglichkeit ist das "Protokollieren" eines Kommandos, das sehr viel Zeit in Anspruch nimmt, z. B.:

tar cvf backup.tar * | tee backup.log

Zusätzlich zum Tar-Archiv wird hier ein Logfile angelegt, das Sie auch noch später zu Kontrollzwecken anschauen können. Eine alternative Umleitung des tar-Kommandos mit > backup.log unterdrückt die Ausgabe ins Fenster, die zuvor durch den Parameter v eingeschaltet wurde, und Sie müssten den Fortschritt von tar mit dem Befehl tail -f backup.log in einem anderen Terminal verfolgen.

Glossar

File Descriptor

Jeder Prozess verwaltet unter Linux eine Liste aller geöffneten Dateien, jeder Eintrag in dieser Liste hat eine eindeutige Nummer, die auch File Descriptor genannt wird. Die Descriptors 0, 1 und 2 werden automatisch erzeugt, da jeder Prozess mit geöffneter Standardein-, -aus- und -fehlerausgabe startet.

Infos

[1] mail: Heike Jurzik, "Minimal mit mail", LinuxUser 03/2003, S. 82

[2] df und du: Heike Jurzik, "Das richtige Maß", LinuxUser 01/2004, S. 78

[3] sort: Heike Jurzik, "Richtige Reihenfolge", LinuxUser 04/2002, S. 76

LinuxCommunity kaufen

Einzelne Ausgabe
 
Abonnements
 
TABLET & SMARTPHONE APPS
Bald erhältlich
Get it on Google Play

Deutschland

Ähnliche Artikel

  • Zu Befehl: Suchen mit grep, egrep, fgrep, (b)zgrep
    Für die Suche nach Wörtern und Ausdrücken in Textdateien bieten sich die Kommandos der grep-Familie an. Als Ergebnis zeigen sie wahlweise die gefundenen Zeilen, die Namen der Dateien, in denen das Suchmuster vorkommt, oder die Anzahl der Treffer an.
  • Zu Befehl: ps, pstree, lsof, kill
    Linux als multitasking-fähiges System besitzt eine leistungsfähige Prozessverwaltung – durch geschickte Ressourcenaufteilung scheinen Programme nicht nur gleichzeitig abzulaufen, es ist auch wesentlich leichter, sich von Prozessen zu trennen, die Probleme verursachen. Wir stellen Kommandos vor, mit denen Sie kurzen Prozess machen.
  • Zu Befehl: date & cal
    Die Kommandozeilen-Tools cal und date erzeugen Kalender und bearbeiten Datum und Uhrzeit. Wenn man sie geschickt einsetzt, kann man daraus zum Beispiel eine kleine Geburtstagsverwaltung machen.
  • Zu Befehl
    MP3s hören, in wav-Dateien umwandeln, Playlists abspielen, mit Shell-Skripten zusammenarbeiten – das alles und noch viel mehr kann das Programm mpg123. Bringen Sie Ihre Kommandozeile zum Singen!
  • sed
    Der Stream-Editor sed hilft beim automatischen Verändern einer oder mehrerer Dateien, vereinfacht sich wiederholende Änderungen oder erstellt gleich ganze Konvertierungsprogramme. Monotone Aufgaben der Textverarbeitung lassen sich so im Handumdrehen lösen.
Kommentare

Infos zur Publikation

LU 02/2016: Alt-PCs flott machen

Digitale Ausgabe: Preis € 4,95
(inkl. 19% MwSt.)

Mit der Zeitschrift LinuxUser sind Sie als Power-User, Shell-Guru oder Administrator im kleinen Unternehmen monatlich auf dem aktuelle Stand in Sachen Linux und Open Source.

Sie sind sich nicht sicher, ob die Themen Ihnen liegen? Im Probeabo erhalten Sie drei Ausgaben zum reduzierten Preis. Einzelhefte, Abonnements sowie digitale Ausgaben erwerben Sie ganz einfach in unserem Online-Shop.

NEU: DIGITALE AUSGABEN FÜR TABLET & SMARTPHONE

HINWEIS ZU PAYPAL: Die Zahlung ist auch ohne eigenes Paypal-Konto ganz einfach per Kreditkarte oder Lastschrift möglich!       

Der Tipp der Woche

Schon gewußt?

14.11.2015

Auch unter Ubuntu 15.10 kann man wieder mit dem Startmedienersteller (alias Startup Disk Creator) ein Live-System auf einem USB-Stick einrichten. ...

Fehler des Startmedienerstellers von Ubuntu 15.10 umgehen

Aktuelle Fragen

Tails Update
Val Lerie, 11.01.2016 10:51, 0 Antworten
Hallo zusammen, updaten > update Speichern unter > Persistent nicht möglich, mit der Meldung;...
Recoll
Jürgen Heck, 20.12.2015 18:13, 4 Antworten
Wie kann man mit Recoll nach bestimmten Zeichen/Satzzeichen bzw. Zeichenkombinationen suchen, z....
Wings Platinum 4 auf Linux?
Bodo Steguweit, 18.12.2015 11:37, 4 Antworten
Hallo in die Runde ich nutze für meine Diashows Wings Platinum 4 als Diareferent. Arbeite jetzt...
Bandbreite regulieren
Georg Armani, 25.11.2015 16:50, 1 Antworten
Hallo, ich bin ein Neuling in Sachen Linux und hoffe auf Hilfe. Ich habe zwei Windows Rechner...
Windows 10 verhindert LINUX
Hans Wendel, 17.11.2015 17:47, 7 Antworten
Hallo alle, mit einem W10-Laptop (vorher war Win7) wollte ich LINUX ausprobieren. Alles, was ni...