关于bash:如何将stdout和stderr重定向到文件

How to redirect both stdout and stderr to a file

本问题已经有最佳答案,请猛点这里访问。

我正在运行一个bash脚本,它创建一个日志文件来执行命令

我使用以下内容

1
2
Command1 >> log_file
Command2 >> log_file

这仅发送标准输出,而不是终端上显示的标准错误。

我可以记录记录到文件的stderr和stdout吗?


如果要登录同一文件:

1
command1 >> log_file 2>&1

如果你想要不同的文件:

1
command1 >> log_file 2>> err_file


重定向两者的最简单语法是:

1
command &> logfile

如果要附加到文件而不是覆盖:

1
command &>> logfile


你可以像2>& 1那样做:

1
 command > file 2>&1


使用:

1
command >>log_file 2>>log_file

请使用command 2>file
这里2代表stderr的文件描述符。 您还可以使用1而不是2,以便将stdout重定向到"文件"