Windows 中的日志文件位于哪里?

Windows 中的日志文件位于哪里?

我有一个用 Python 编写的程序,它写入stderrstdout。我使用调用它pythonw,这意味着它会运行没有命令行。

Windows 是否保存这些日志文件?如果是,保存在哪里?

(我知道我可以在 python 中或使用命令行重定向它们,但它们会自动存储吗?)

答案1

假设您的程序是从命令提示符调用的,则 stderr 和 stdout 默认定向到控制台。

如果您想将它们保存到文件中,则必须重定向输出。

标准输出:

c:\path\program.exe >c:\temp\stdout.log

标准错误:

c:\path\program.exe 2>c:\temp\stderr.log

不同文件中的 STDOUT 和 STDERR

c:\path\program.exe >c:\temp\stdout.log 2>c:\temp\stderr.log

同一文件中的 STDOUT 和 STDERR

c:\path\program.exe >c:\temp\stdout.log 2>&1   

如果要添加到现有日志文件而不是覆盖内容,请使用“>>”而不是“>”。如果日志文件不存在,则在两种情况下都会创建它。

编辑:在我最初的回答之后,你编辑了你的问题,添加了更多细节。所以新的答案是:不,它们不会自动存储。如果需要,你必须明确将输出流重定向到文件。

相关内容