此 question 的答案解释了如何将 stdout 和 stderr 打印到终端,同时还将它们重定向到文件:
program [arguments...] 2>&1 | tee outfile
如果应该在 2 个不同的文件中重定向 stdout 和 stderr,如何扩展?
使用process substitution:
program >(tee stdout.log) 2>(tee stderr.log >&2)