Windows系统下如何将wkhtmltopdf命令输出日志写入文件?
解决wkhtmltopdf输出重定向到文件空白的问题
问题原因
wkhtmltopdf的帮助信息、版本信息这类内容是输出到标准错误流(stderr),而你使用的>>命令仅会重定向标准输出流(stdout),所以日志文件只会捕获到空内容,CMD窗口能看到输出是因为窗口默认同时显示stdout和stderr的内容。
解决方案
在CMD中执行
将stderr的内容合并到stdout一起重定向,使用2>&1参数:
C:\PROGRA~1\wkhtmltopdf\bin\wkhtmltopdf >> C:\test.txt 2>&1
如果需要覆盖文件内容而非追加,替换>>为>:
C:\PROGRA~1\wkhtmltopdf\bin\wkhtmltopdf > C:\test.txt 2>&1
在PowerShell中执行
PowerShell的重定向语法略有不同,使用*>&1捕获所有输出流:
& "C:\Program Files\wkhtmltopdf\bin\wkhtmltopdf.exe" *>&1 | Out-File C:\test.txt
或者使用兼容CMD的语法:
& "C:\Program Files\wkhtmltopdf\bin\wkhtmltopdf.exe" > C:\test.txt 2>&1
内容的提问来源于stack exchange,提问作者Darren
相关产品推荐
相关产品推荐

