ターミナルでコマンドの出力をリダイレクトがないかのように表示したい。
また、stderrをerr.logにリダイレクトし、stdoutをstdout.logにリダイレクトする必要があります。
ターミナルに表示されているものの正確なコピー、つまりエラーが発生したときに、別のファイルstdouterr.logに印刷しておくと便利です。
承認された回答:
tee
を使用する 次のようにコマンドを実行します:
(cmd | tee stdout.log) 3>&1 1>&2 2>&3 | tee stderr.log
3>&1 1>&2 2>&3
teeはstdoutしか受け入れられないため、stderrとstdoutを交換する方法です。
tee
を使用したより高度なリダイレクトについては、Unixteeコマンドをご覧ください。 。