我已经在Windows 10中的cmd.exe下执行了一个.bat文件,并将标准输出和标准错误重定向到了一个文件:
C:\MyFolder> Foo.bat 1>x.txt 2>&1
但是它仍然会在控制台窗口中打印一些行,并且这些行不会写入文件中。
答案 0 :(得分:0)
程序(包括.bat脚本)可以通过几种方式绕过stdout和stderr。
在Windows上,它可以使用Console Handles直接写入控制台窗口。无法将其重定向到文件。
提供的链接指向使用C语言编写的Windows API,但是.bat脚本可以调用以另一种语言(jam,perl,pyton,java等)编写的程序,该语言可以具有自己的编写语法到控制台。
...