GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Linux Tee Command Tutorial mit Beispielen für Anfänger

Wenn Sie mit dem Terminal unter Linux arbeiten, stehen Ihnen viele Befehlszeilenprogramme zur Verfügung, die Ihnen das Leben erleichtern. Ein solches Dienstprogramm ist Tee . In dieser kurzen Anleitung erfahren wir anhand praktischer Beispiele, was Tee ist und wie der Tee-Befehl unter Linux verwendet wird.

Einführung in den Tee-Befehl

Das tee ist ein einfaches Befehlszeilenprogramm, das Eingaben akzeptiert und die Ausgabe in eine Datei und eine Standardausgabe (d. h. Terminal) schreibt. Der Tee-Befehl wird hauptsächlich in Shell-Skripten verwendet, wenn Sie die Ausgabe in mehrere Dateien umleiten und die Ausgabe weiterverarbeiten möchten.

Der Tee-Befehl ist Teil der GNU coreutils , daher ist es bei allen Linux-Distributionen vorinstalliert.

Um zu prüfen, ob der tee-Befehl in Ihrer Linux-Distribution verfügbar ist, führen Sie den folgenden Befehl aus:

$ which tee
/usr/bin/tee

Um die Tee-Version zu überprüfen, können Sie die --version verwenden Flagge.

$ tee --version
tee (GNU coreutils) 8.32

Hilfe zum Befehl tee anzeigen

Wenn Sie den tee-Befehl noch nie verwendet haben, empfiehlt es sich, mit dem Hilfeabschnitt für den tee-Befehl zu beginnen.

Sie können auf die Manpage für den Befehl tee zugreifen, um mehr über dieses Dienstprogramm zu erfahren.

$ man tee

Sie können auch die --help übergeben Argument für den tee-Befehl, um dessen Hilfe-Handbuch anzuzeigen.

$ tee --help

Tee-Befehlssyntax

Die typische Syntax des Tee-Befehls ist unten angegeben:

tee [OPTION]… [DATEI]…

Es akzeptiert Flags und Dateinamen, wohin die Ausgabe umgeleitet wird.

Es gibt zwei wichtige Flags, die Sie hauptsächlich mit dem tee-Befehl verwenden werden.

  • -a , --append flag :An Dateien anhängen.
  • -i , -ignore-interrupts flag :Interrupt-Signale ignorieren.

Erlauben Sie mir nun, Ihnen einige Beispiele für den tee-Befehl unter Linux zu zeigen.

Linux Tee-Befehlsbeispiele für Anfänger

Wie bereits erwähnt, akzeptiert der tee-Befehl Eingaben und gibt die Ausgabe an das Terminal sowie eine Datei aus, die als Argument übergeben wird.

Im folgenden Beispiel nimmt der tee-Befehl Eingaben von echo entgegen Befehl und gibt die Ausgabe sowohl an das Terminal als auch an hello.txt aus Datei.

$ echo "Welcome to OSTechNix" | tee hello.txt
Welcome to OSTechNix

Lassen Sie uns den Inhalt von hello.txt überprüfen Datei:

$ cat hello.txt 
Welcome to OSTechNix

Verwenden Sie den Tee-Befehl mit dem Pipe-Operator

Der Tee-Befehl besteht nicht nur darin, die Standardeingabe auf dem Terminal auszugeben und sie auch zur weiteren Verarbeitung in ein anderes Programm zu leiten.

Meistens wird der Befehl tee in Kombination mit pipe verwendet (|)-Operator in Shell-Skripten.

Sehen Sie sich das folgende Beispiel an.

$ echo "Hello world" | tee hello.txt | rev
dlrow olleH
$ cat hello.txt
Hello world

Lassen Sie mich erklären, was passiert, wenn Sie den obigen Befehl ausführen.

  • Das echo Der Befehl sendet seine Ausgabe "Hello World" als Eingabe für das tee Befehl durch die Pipe.
  • Tee Der Befehl speichert die Ausgabe in der angegebenen Datei hello.txt .
  • Anstatt die Ausgabe an das Terminal zu drucken, was das Standardverhalten ist, wird der tee Befehl übergeben Sie "Hello World" string als Eingabe für rev Befehl, der den String in umgekehrter Reihenfolge ausgibt .

Hier ist ein weiteres Beispiel.

Der folgende Befehl erstellt ein Verzeichnis namens "ostechnix", zählt die Anzahl der Zeichen in "ostechnix" und gibt "ostechnix" an das Terminal aus:

$ echo "ostechnix" | tee >(xargs mkdir) >(wc -c)

Vorsicht: Möglicherweise müssen Sie sudo verwenden mit dem tee Befehl, wenn Sie Dateien in Verzeichnissen erstellen, auf die Sie als normaler Benutzer keinen Zugriff haben.

Mehrere Dateien übergeben

Der Tee-Befehl akzeptiert auch mehrere Dateien als Argumente und speichert die Ausgabe in jeder Datei.

$ echo "Welcome to OSTechNix" | tee hello1.txt hello2.txt hello3.txt
Welcome to OSTechNix

Lassen Sie uns den Inhalt jeder Datei überprüfen:

$ cat hello1.txt
Welcome to OSTechNix
$ cat hello2.txt
Welcome to OSTechNix
$ cat hello3.txt
Welcome to OSTechNix

Überschreiben vs. Anhängen

Das Standardverhalten des tee Befehl ist, wird gesucht, ob die Datei bereits verfügbar ist, und die Daten mit der neuen überschrieben. Wenn die Datei nicht verfügbar ist, wird sie erstellt.

Wenn Sie die Daten anhängen möchten, anstatt sie zu überschreiben, verwenden Sie -a oder --append Flagge.

$ cat hello1.txt
Welcome to OSTechNix
$ echo "I am using PoP_OS Cosmic Desktop" | tee -a hello1.txt
I am using PoP_OS Cosmic Desktop
$ cat hello1.txt
Welcome to OSTechNix
I am using PoP_OS Cosmic Desktop

Kombination von Tee mit Umleitungsoperator

Wenn Sie die Ausgabe nicht auf dem Terminal ausgeben, sondern nur in Dateien schreiben möchten, können Sie den Umleitungsoperator mit dem Befehl tee kombinieren.

Dies ist nur dann ein idealer Fall, wenn der Tee-Befehl in Ihrer Pipe-Kette an letzter Stelle steht. Wenn die tee-Ausgabe an einen anderen Befehl wie as weitergeleitet wird
Wie im ersten Beispiel gezeigt, muss der Umleitungsoperator nicht verwendet werden.

$ echo "I am using PoP_OS Cosmic Desktop" | tee -a hello1.txt &> /dev/null

Signale unterbrechen

Der Tee-Befehl hat die Option, SIGINT mit dem -i zu unterbrechen oder --ignore-interrupts Flagge.

Bedeutung - wenn Sie CTRL + C drücken in Ihrem Terminal, während Sie den tee-Befehl mit -i ausführen Flag, unterbricht der tee-Befehl das Signal und führt einen eleganten Exit durch, indem er EOF aus der PIPE liest.

$ { echo Hello world;sleep 10; } | tee -i hello1.txt
Hello world
^C
$ cat hello1.txt
Hello world

Zusammenfassung

Tee ist ein einfaches Programm, das Sie möglicherweise nicht täglich verwenden. Die Kenntnis des tee-Befehls ist jedoch praktisch, wenn Sie Shell-Skripte schreiben. Hoffe das hilft.


Linux
  1. Linux expand Command Tutorial für Anfänger (mit Beispielen)

  2. Linux-Factor-Befehls-Tutorial für Anfänger (mit Beispielen)

  3. Linux yes Command Tutorial für Anfänger (mit Beispielen)

  4. Linux nproc Command Tutorial für Anfänger (mit Beispielen)

  5. Linux-Benutzer Befehls-Tutorial für Anfänger (mit Beispielen)

Linux sha1sum Command Tutorial für Anfänger (mit Beispielen)

Linux Look Command Tutorial für Anfänger (mit Beispielen)

Linux-Lsattr-Befehls-Tutorial für Anfänger (mit Beispielen)

Linux tload Command Tutorial für Anfänger (mit Beispielen)

Linux znew Command Tutorial für Anfänger (mit Beispielen)

Linux tr Command Tutorial für Anfänger (mit Beispielen)