Asi takhle:
$ command >>output 2>>error
Stačí je přidat na jeden řádek command 2>> error 1>> output
Pamatujte však, že >> slouží k připojení, pokud soubor již obsahuje data. Zatímco > přepíše všechna existující data v souboru.
Takže command 2> error 1> output pokud nechcete připojit.
Jen pro doplnění můžete napsat 1> jako právě > protože výchozí deskriptor souboru je výstup. takže 1> a > je to samé.
Takže command 2> error 1> output se změní na command 2> error > output
Zkuste toto:
your_command 2>stderr.log 1>stdout.log
Další informace
Číslice 0 až 9 jsou deskriptory souborů v bash.0 znamená standardní vstup, 1 znamená standardní výstup, 2 znamená standardní chybu. 3 až 9 jsou náhradní pro jakékoli jiné dočasné použití.
Libovolný deskriptor souboru lze přesměrovat do souboru nebo na jiný deskriptor souboru pomocí operátoru > . Místo toho můžete použít operátor >> k připojí k souboru namísto vytvoření prázdného.
Použití:
file_descriptor > filename
file_descriptor > &file_descriptor
Viz Advanced Bash-Scripting Guide:Kapitola 20. Přesměrování I/O.
Nebo pokud chcete smíchat výstupy (stdout &stderr) do jednoho jediného souboru, můžete použít:
command > merged-output.txt 2>&1