我有一个标准的Electron应用程序(基于electron-prebuilt),应该使用以下命令向标准输出写入内容:(在我的项目main.js文件中)
process.stdout.write('stdout write test')
当我从PowerShell启动应用程序并将输出重定向到文本文件时,我如预期地在终端窗口中看到了字符串显示。
> .\App.exe > log.txt
标准输出写入测试
但是当我打开log.txt文件时,它是一个空文件。我错过了什么吗?
编辑:为了澄清Ansgar Wiechers的正确答案:在Windows命令提示符中,我需要运行以下命令:
set ELECTRON_NO_ATTACH_CONSOLE=true
这会导致
console.log
和 process.stdout.write
的输出被重定向到 Windows 的 stdout 流中。