tee – bash Tutorial Teil 19

In dieser Jahreszeit tut ein koffeinhaltiges Heißgetränk gut, aber darum geht es heute nicht. tee ist ein Kommando, dass gerade beim Piping sehr nützlich ist und jeder bash User kennen sollte.

Python Logo (CC-BY-SA The people from the Tango! project / Wikipedia)
Python Logo (CC-BY-SA The people from the Tango! project / Wikipedia)
1Einführung
2Der bash Prompt
3key bindings
4Der Startvorgang
5Environment Variablen
6builtin commands
7Arbeiten mit Dateien
8nano
9bash Scripting
10Variablen
11Verzweigungen (if)
12Schleifen
13Kommandozeilenparameter
14exit Codes bash Tutorial Teil 14
15von der Idee zum Script
16grep
17Piping und Redirection
18tee

tee

tee (gesprochen wie der englische Buchstabe T) hat eine vermeintlich simple Aufgabe.

Es nimmt alles, was in es per stdin hineingeschrieben wird und schreibt es dann sowohl nach stdout als auch in eine Datei hinein. Das ganze ähnelt einem Bewässerungskanal mit einem Zulauf und zwei orthogonalen Abläufen. Da dieser wie ein ‚T‘ aussieht, wurde das Kommando tee benannt.

Arbeitsweise von tee
Olli Graf - raspithek.de
teeCreative Commons Attribution-NonCommercial-ShareAlike 4.0 International License . loading=
Arbeitsweise von tee

Praxis

Ein paar praktische Beispiele machen die Funktion von tee deutlicher. Mit ls -l /|tee output.txt liste ich das Root-Verzeichnis auf und pipe die Ausgabe von ls nach stdin von tee. Dieses nimmt den Input und gibt ihn ganz normal nach stdout weiter. Zusätzlich wird er aber auch nach output.txt geschrieben.

tee gibt die Ausgabe von ls nach stdout, schreibt sie aber zusätzlich nach output.txt
Olli Graf - raspithek.de
ls -lCreative Commons Attribution-NonCommercial-ShareAlike 4.0 International License . loading=
tee gibt die Ausgabe von ls nach stdout, schreibt sie aber zusätzlich nach output.txt
Der Inhalt von output.txt
Olli Graf - raspithek.de
cat-output-txtCreative Commons Attribution-NonCommercial-ShareAlike 4.0 International License . loading=
Der Inhalt von output.txt

Daten anhängen

Standardmäßig überschreibt tee bei jedem Aufruf eine vorhandene Datei. Dies lässt sich mit dem Parameter -a abstellen. Dann werden neue Daten an eine bestehende Datei hinten angehängt.

mehrere Dateien

tee kann seine Eingabedateien in mehrere Dateien schreiben.

ls -l /|tee output.txt output1.txt output2.txt

Dies erzeugt drei identische Dateien mit der Ausgabe des ls Kommandos.

Schreibe einen Kommentar

Creative Commons License
Except where otherwise noted, the content on this site is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.
Olli Graf - raspithek.de
WordPress Cookie Hinweis von Real Cookie Banner