我正在尝试捕获程序的输出然后将其写入文件。
运行后MyFile.exe -args > foo.txt
会得到一个空文件。 同样的情况也发生在 上MyFile.exe -args > foo.txt 2>&1
。 如果我像往常一样运行该命令,MyFile.exe -args
输出会清楚地写入控制台。
该程序是用 C++ 编写的,使用 编写wprintf_s
。它似乎在最后一行添加了一个换行符,如果这很重要的话。
我很感激任何关于如何实现这一点的想法。如果有人想重现:我正在使用的文件和它的 GitHub 页面(VirusTotal 报告)。
答案1
您可以将其写入脚本文件并将输出重定向到所需的文件
例如:回显“MyFile.exe -args”> file.sh
然后尝试执行脚本文件并将文件的输出和错误移动到您需要的文本文件中
IE)sh 文件.sh >foo.txt 2>&1
这会起作用!它会将可执行文件(.exe 文件)的输出以及错误写入单独的文本文件中。