我正在mingw32-make
PowerShell 中直接运行命令来构建 C 项目。
但是,输出有时会变得完全混乱,例如,一行的一部分插入到另一行等等。有时这会使读取输出变得不可能。
两次运行之间的输出似乎是一致的,即对于某些项目状态,它总是会产生相同的混乱输出。
我尝试将输出转储到 txt 文件中mingw32-make > log.txt
。我在文本文件中获得了清晰的输出,但所有错误报告都丢失了!它只是显示“编译错误”,而没有实际的错误报告。
有什么想法可以解决这个问题吗?
答案1
你所描述的听起来像是mingw32-make
发送到多个流。混合输出类似于混合Write-Host
和Write-Output
调用时发生的情况。第一个直接进入主机,但第二个进入成功流,并且然后给主人。
最简单的解决方案可能就是将所有流重定向到您的文件,或者将您想要的流和Tee-Object
结果合并到屏幕和您的文件中。[咧嘴笑]
请查看Get-Help about_Redirection
详情。
我看到你使用了mingw32-make 2>&1 > log.txt
。我无法指定任何特定的流,因为我没有办法测试该特定的实用程序。我怀疑我会选择mingw32-make *> log.txt
重定向所有流。你的模式更好,因为它避免了做过头。