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

时间:2015-01-21 15:40:50

标签: mysql windows batch-file cmd

我有一个文件batchfile.bat,它有一些7zip和Mysql操作。我有第二个批处理文件来执行这个名为executor.bat的文件。 executor.bat文件只有以下代码

.\batchfile.bat >>output.txt

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

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

2 个答案:

答案 0 :(得分:2)

>>重定向程序将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

答案 1 :(得分:1)

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

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