批处理执行的日志输出问题

Issue with logging output of batch execution

我有一个文件 batchfile.bat,其中包含一些 7zip 和 Mysql 操作。我有第二个批处理文件来执行此调用 executor.batexecutor.bat 文件只有下面的代码

.\batchfile.bat >>output.txt

所以我希望所有的执行输出都写入output.txt。但是,当我双击 executor.bat 时,我看到命令提示符打开,并且一些 mysql 错误消息出现在这个命令提示符中,而不是移动到 output.txt 文件中。另一方面,我可以看到 output.txt 文件中捕获了 7-zip 命令行输出。

如何进一步重定向命令提示符下的消息以进入 output.txt 文件

错误消息通过与常规消息不同的输出管道发送到命令提示符。

尝试将 executor.bat 更新为 .\batchfile.bat >>output.txt 2>>output.txt

>> 重定向器将 STDOUT(文本输出)附加到目标文件,但 mysql 错误消息被发送到 STDERR(错误文本输出)。要将输出和错误都重定向到一个文件,请使用以下语法:

.\batchfile.bat >>output.txt 2>>&1

仅供参考,所有数字句柄都是:

STDIN     = 0  Keyboard input
STDOUT    = 1  Text output
STDERR    = 2  Error text output
UNDEFINED = 3-9