打印STDOUT / STDERR并将它们写入Bash中的文件?

有没有办法让Bash将STDOUT / STDERRredirect到一个文件,但仍然打印到terminal?

Solutions Collecting From Web of "打印STDOUT / STDERR并将它们写入Bash中的文件?"

这会将STDOUT和STDERR重定向到同一个文件:

some_command 2>&1 | tee file.log 

 $ touch foo; ls foo asfdsafsadf 2>&1 | tee file.log ls: asfdsafsadf: No such file or directory foo $ cat file.log ls: asfdsafsadf: No such file or directory foo 

使用tee命令。

 $ echo "hi" | tee output.txt hi [unix]$ ls output.txt [unix]$ cat output.txt hi