Seit PowerShell 7.0 kann man die letzten aufgetretenen Fehler mit dem Commandlet Get-Error
abrufen.
Im vorherigen Teil dieser PowerShell-Serie in meinem Blog ging es um die Ausgabe von Fehlern, nachdem diese auftreten. Hier geht es nun um den späteren Zugriff auf die letzten Fehler.
Die eingebaute Variable $Error
enthält in PowerShell seit Version 1.0 die gesamte Geschichte der aufgetretenen Fehler in Form von Objekten des Typs System.Management.Automation.ErrorRecord
, die jeweils in Unterobjekten Details liefern, zum Beispiel ist das .NET-Fehlerobjekt in der Eigenschaft Exception.
$Error[0]
der letzte aufgetretene Fehler.
Seit PowerShell 7.0 kann man den letzten Fehler alternativ mit dem Commandlet Get-Error
abrufen. Es liefert eine Instanz von System.Management.Automation.ErrorRecord#PSExtendedError
. Mit dem Parameter -newest x
kann man die x letzten Fehler abrufen.
PowerShell 7 zeigt für Instanzen der Klasse ErrorRecord
eine deutlich detailliertere Ausgabe als die Windows PowerShell.
Vergleich der Fehlerausgabe in Windows PowerShell 5.1 und PowerShell 7.0
()