Powershell, file.exe --help-Ausgabe nicht umleitbar

Powershell, file.exe --help-Ausgabe nicht umleitbar

Ich versuche, die Ausgabe der Hilfemeldung von einer Binärdatei in eine output.txt-Datei umzuleiten, aber die Hilfemeldung wird nicht wie erwartet umgeleitet. Ich habe mehrere verschiedene Lösungen ausprobiert, aber keine hat funktioniert. Hier sind die Befehle, die ich ausprobiert habe (ich habe auch „transcript“ ausprobiert, aber es funktioniert nicht):

PS D:\user\drivers> wmic process call create ".\drivers.exe -h" > output.txt

PS D:\user\drivers> cat .\output.txt
Exécution (Win32_Process)->Create()

Méthode exécutée.

Paramètres de sortie :
instance of __PARAMETERS
{
        ReturnValue = 9;
};
PS D:\user\drivers> $output = Invoke-Expression ".\drivers.exe -h"
PS D:\user\drivers>
PS D:\user\drivers> $output|  Out-File -FilePath ".\output.txt"
PS D:\user\drivers> cat .\output.txt
PS D:\user\drivers> .\drivers.exe -h | Out-File -FilePath ".\output.txt"

Usage: /s /e /f <target-path>
  /s - Un-package the package in silent mode (not showing user interaction UI)
  /f - Runtime switch that overrides the default target path specified in build time
  /e - Prevent execution of default executable file specified in build time.
       Only extracting the content files to target folder(Use this with /s /f)
PS D:\user\drivers> cat .\output.txt

Antwort1

Diese Ausgabe scheint als Fehler statt als Standardausgabe gesendet zu werden. Versuchen Sie stattdessen, stderr( 2>) auf eine Datei umzuleiten, wie unten

.\drivers.exe -h 2> output.txt

Oder um beides umzuleiten stdoutund stderr:

.\drivers.exe -h 2>&1 > output.txt

Weitere Informationen zur Ausgabeverarbeitung finden Sie unter:Über_Umleitung

verwandte Informationen