So:
$ command >>output 2>>error
Fügen Sie sie einfach in einer Zeile hinzu command 2>> error 1>> output
Beachten Sie jedoch, dass >> dient zum Anhängen, wenn die Datei bereits Daten enthält. Wohingegen > überschreibt alle vorhandenen Daten in der Datei.
Also command 2> error 1> output wenn Sie nicht anhängen möchten.
Nur der Vollständigkeit halber können Sie 1> schreiben als nur > da der Standarddateideskriptor die Ausgabe ist. also 1> und > ist dasselbe.
Also command 2> error 1> output wird zu command 2> error > output
Versuchen Sie Folgendes:
your_command 2>stderr.log 1>stdout.log
Weitere Informationen
Die Ziffern 0 bis 9 sind Dateideskriptoren in bash.0 steht für Standardeingabe, 1 steht für Standardausgabe, 2 steht für Standardfehler. 3 bis 9 sind für jede andere vorübergehende Verwendung frei.
Jeder Dateideskriptor kann mit dem Operator > zu einer Datei oder zu einem anderen Dateideskriptor umgeleitet werden . Sie können stattdessen den Operator >> verwenden um an eine Datei anzuhängen, anstatt eine leere zu erstellen.
Verwendung:
file_descriptor > filename
file_descriptor > &file_descriptor
Siehe Advanced Bash-Scripting Guide:Chapter 20. I/O Redirection.
Oder wenn Sie Ausgaben (stdout &stderr) in einer einzigen Datei mischen möchten, können Sie Folgendes verwenden:
command > merged-output.txt 2>&1