Ich weiß, dass ich „tee“ verwenden kann, aber ich möchte nicht, dass die Ausgabe auf dem Bildschirm gedruckt wird. Ich möchte, dass sie nur in die Datei gedruckt wird.
Beispiel:
ls > pk.txt
Jetzt sollte auch eine weitere Datei mit dem Namen „praveen“ erstellt werden.
Antwort1
tee(1)
Zum Schreiben in zwei Dateien und Verwerfen von stdout verwenden :
ls | tee pk.txt praveen >/dev/null
Bearbeitung2:Wie Stephane und Thomas anmerken, tee
ist dies aufgrund der Funktionsweise eine bessere Version und führt zu weniger Schreibvorgängen:
ls | tee pk.txt > praveen
Antwort2
Mit zsh
:
ls > file1 > file2
(intern zsh
wird eine Pipe erstellt und ein Prozess gestartet, der aus dieser Pipe liest und in die beiden Dateien schreibt tee
. ls
stdout ist das andere Ende der Pipe.)