Wie kann ich gleichzeitig die Standardeingabe eingeben und in eine Datei sichern?

Wie kann ich gleichzeitig die Standardeingabe eingeben und in eine Datei sichern?

Ich möchte einen Befehl mit Standardeingaben füttern und diese Standardeingaben gleichzeitig in die Datei schreiben. Dies ist nur ein fehlgeschlagener Versuch:

read | tee dump.txt

dieser Befehl wartet auf die Standardeingabe. Ich erwarte, dass alles, was ich eingebe, readin dump.txt eingespeist UND dort abgelegt wird. Wie kann ich das machen?

Antwort1

Tauschen Sie die Pipe aus: Lassen Sie die Ausgabe zuerst durch, teeum eine Kopie in einer Datei zu speichern, während Sie sie gleichzeitig erneut auf der Standardausgabe replizieren, und leiten Sie sie dann an Ihren eigentlichen Befehl weiter.

Ich verwende catstattdessen here, weil es eine unbegrenzte Menge an Eingaben benötigt und nicht nach der ersten Zeile (plus zusätzlicher Zeilenumbruch, sieheHierfür eine Erklärung davon) wie read:

echo something | tee dump.txt | cat

verwandte Informationen