我正在尝试重定向从供应商处收到的Windows exe文件的输出。我没有这个文件的代码,供应商有点强硬,很抱歉混淆。
请注意,我不是要将输出和错误连接在一起 - 我无法重定向。
如果我使用PowerShell运行它,我会得到以下
PS C:\test>.\vendor.exe
output
output
output
error
error
output
当我尝试重定向stdout时,我得到以下内容。
PS C:\test>.\vendor.exe > output.txt
error
error
然而,在创建output.txt时,它是一个空文件。它的长度为0。
任何想法如何实现重定向,或者是否有可能阻止exe中的重定向?
答案 0 :(得分:1)
您需要将标准错误重定向到标准输出。
尝试:
.\vendor.exe 2>&1 > output.txt
在这里,2>&1
说"将stderr重定向到stdout"并且> output.txt
说"将stdout重定向到output.txt"。
或者:
.\vendor.exe *> output.txt
此处,*> output.txt
说"将所有内容重定向到output.txt。"
主要区别在于有6个输出流:
1 Success output
2 Errors
3 Warning messages
4 Verbose output
5 Debug messages
6 Informational messages