Der Linux-Befehl „tee“ ist dem Befehl „cat“ ziemlich ähnlich, mit nur einem Unterschied. Es setzt stdin auf stdout und legt sie auch in einer Datei ab. Es ist einer der am häufigsten verwendeten Befehle zusammen mit anderen Befehlen über Piping. Es ermöglicht uns, alles zu schreiben, was von der Standardeingabe in die Standardausgabe bereitgestellt wird. Optional ist das Schreiben in eine oder mehrere Dateien möglich. Der Befehlsname „tee“ stammt von „T splitter“ (T-Splitter), der in der Sanitärtechnik verwendet wird.
Alisa Manyonok
Syntax:
tee
Optionen:
Im Folgenden sind einige nützliche Optionen aufgeführt, die mit dem Befehl tee verwendet werden können, um ihn spezifischer zu gestalten:
-a, --append: Es wird verwendet, um die Daten an die angegebenen Dateien anzuhängen, es überschreibt keine Daten.
-i, --ignore-interrupts: Es wird verwendet, um die Interrupt-Signale zu ignorieren.
-P: Es wird verwendet, um Fehler beim Schreiben in Nicht-Pipes zu diagnostizieren.
--output-error[=MODE]: Es wird verwendet, um das Verhalten im Schreibfehlermodus festzulegen.
--helfen: Es dient zur Anzeige der Hilfedokumentation.
--Ausführung: Es wird verwendet, um die Versionsinformationen anzuzeigen.
Beispiele für den Tee-Befehl
Sehen wir uns die folgenden Beispiele des Tee-Befehls an:
- So verwenden Sie den Tee-Befehl
- Schreiben Sie eine Datei und hängen Sie die Ausgabe an
- Schreiben Sie den Status der Daten in eine Datei
- Schreiben Sie in mehrere Dateien
- Schreiben Sie in eine privilegierte Datei
- Interrupts ignorieren
- Verstecken Sie die Ausgabe
So verwenden Sie den Tee-Befehl
Mit dem Befehl tee wird eine Standardeingabe in eine Standardausgabe und eine Datei geschrieben. Es wird nach einer Pfeife verwendet. Um in die Standardausgabe und eine Datei zu schreiben, geben Sie den Befehl tee nach einer Pipe an und geben Sie den Dateinamen an. Betrachten Sie den folgenden Befehl:
cat weeks.txt | tee newfile.txt
Der obige Befehl schreibt die Eingabe von „weeks.txt“ in „newfile.txt“. Betrachten Sie die folgende Ausgabe:
Aus der obigen Ausgabe wird mit dem Befehl tee eine Datei „newfile.txt“ erstellt.
Schreiben Sie eine Datei und hängen Sie die Ausgabe an
Die Option „-a“ wird mit dem Befehl „tee“ verwendet, um die Ausgabe anzuhängen und in eine Datei zu schreiben. Betrachten Sie den folgenden Befehl:
echo 'Saturday and Sunday are week offs' | tee -a newfile.txt
Der obige Befehl hängt die angegebene Eingabe an die Datei „newfile.txt“ an. Betrachten Sie die folgende Ausgabe:
Ab der obigen Ausgabe wird die angegebene Eingabe an „newfile.txt“ angehängt.
Schreiben Sie den Status der Daten in eine Datei
Das Schreiben des Datenstatus ist sehr nützlich, um ein Backup zu erstellen oder einen Snapshot der Daten für Debugging-Zwecke zu erstellen. Dies kann ganz einfach mit dem Befehl tee erfolgen.
Um den Datenstatus in eine Datei zu schreiben, führen Sie den folgenden Befehl aus:
ls ~/ | tee pipe1.txt | grep ^b | tee pipe2.txt | sort -r
Der obige Befehl schreibt die Daten in die Datei „pipe1.txt“. Betrachten Sie die folgende Ausgabe:
Aus der obigen Ausgabe wird der Snapshot der aktuellen Arbeitsverzeichnisdaten in „newfile.txt“ gespeichert.
Schreiben Sie in mehrere Dateien
Mit dem Befehl tee können wir in mehrere Dateien schreiben. Um in mehrere Dateien zu schreiben, geben Sie die Namen der Dateien nach dem Befehl tee wie folgt an:
echo ' add text' | tee file1.txt file2.txt file3.txt
Der obige Befehl erstellt alle angegebenen Dateien. Betrachten Sie die folgende Ausgabe:
Schreiben Sie in eine privilegierte Datei
Mit dem Befehl „tee“ können wir in eine Datei schreiben, die über Sudo-Berechtigungen verfügt. Wenn wir versuchen, eine Datei zu schreiben, die dem Root-Benutzer gehört, tritt ein Berechtigungsfehler auf. Wir können die Sudo-Berechtigung jedoch erhöhen, indem wir den Tee-Befehl wie folgt ausführen:
echo 'some text' | sudo tee -a
Interrupts ignorieren
Die Option „-i“ wird verwendet, um die Interrupts zu ignorieren. Dies ist nützlich, wenn wir den Befehl während der Ausführung ordnungsgemäß anhalten und beenden möchten. Es wird wie folgt verwendet:
command | tee -i
Verstecken Sie die Ausgabe
Um den Befehl tee so einzuschränken, dass er nicht in die Standardausgabe schreibt, leiten Sie ihn nach „/dev/null“ um. Führen Sie den Befehl wie folgt aus:
echo 'Text' | tee newfile.txt >/dev/null
Betrachten Sie die folgende Ausgabe: