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

Naf*_*Kay 8 linux bash stdout stderr io-redirection

有没有办法让Bash将STDOUT/STDERR重定向到一个文件,但仍然将它们打印到终端?

Sie*_*geX 17

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

some_command 2>&1 | tee file.log
Run Code Online (Sandbox Code Playgroud)

$ 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
Run Code Online (Sandbox Code Playgroud)

  • 如果您不想每次都覆盖`file.log`,请使用`tee -a file.log`。 (2认同)