Ich möchte einen dcdiag-Test schreiben, um mich auf Fehler hinzuweisen. Ich dachte, ich könnte dies in PowerShell tun, indem ich ...
$test = dcdiag 2>$err
Ich habe im Moment keine Fehler von dcdiag, daher konnte ich das nicht direkt testen, aber ich habe ein anderes PowerShell-Skript geschrieben, um eine Ausnahme auszulösen, in der Hoffnung, dass ich diese Methode mit diesem Skript testen kann. Dies funktionierte nicht mit der oben beschriebenen Methode, also entschied ich mich für:
try {
$test = dcdiag
}
catch {
$err = $_.Exception.Message
}
Es hat für meinen Testfall funktioniert, aber ich weiß nicht, ob dies einen Standardfehler von dcdiag hervorruft.
Wie erreiche ich die Standardfehlerumleitung zu einer Variablen in PowerShell am besten, wenn ich sie mit dcdiag verwenden möchte?
quelle
$test
wird beides haben, deshalb filtere ich den Fehler aus$err
.