
Ich versuche, die Ausgabe eines Programms zu erfassen und sie dann in eine Datei zu schreiben.
Beim Ausführen MyFile.exe -args > foo.txt
wird eine leere Datei ausgegeben. Dasselbe gilt für MyFile.exe -args > foo.txt 2>&1
. Wenn ich den Befehl wie üblich ausführe, MyFile.exe -args
wird die Ausgabe klar in die Konsole geschrieben.
Das Programm ist in C++ geschrieben und verwendet wprintf_s
. Es scheint, als würde an die letzte Zeile ein Zeilenumbruch angehängt, falls das wichtig ist.
Ich bin für alle Ideen dankbar, wie man das zum Laufen bringen kann. Falls jemand Lust hat, es nachzubilden:die Datei, die ich verwendeUndseine GitHub-Seite(VirusTotal-Bericht).
Antwort1
Sie können es in eine Skriptdatei schreiben und die Ausgabe in die gewünschte Datei umleiten
Zum Beispiel:echo "MeineDatei.exe -args" > datei.sh
Versuchen Sie dann, die Skriptdatei auszuführen und die Ausgabe und den Fehler einer Datei in die Textdatei zu verschieben, die Sie benötigen
dh)sh datei.sh >foo.txt 2>&1
Das wird funktionieren! Und es wird die Ausgabe sowie den Fehler der ausführbaren Datei (.exe-Datei) in eine separate Textdatei schreiben.