Az előzőekben látott hibakezelési módszerek úgy működtek, hogy egy adott cmdletnél állítottam be a „CommonParameter-ek” segítségével, hogy az hogyan reagáljon egy hibára. Azonban ez elég nehézkes egy hosszabb szkript esetében. Szerencsére ezt a fajta működést globálisan is beállíthatjuk. Nézzük meg, hogy milyen „error”-ral kapcsolatos változóink vannak:
[69] PS C:\old> Get-ChildItem variable:\*error*
Name Value
---- -----
Error {PathNotFound,Microsoft.PowerShell.Comman...
ReportErrorShowSource 1
ReportErrorShowStackTrace 0
ReportErrorShowExceptionClass 0
ErrorActionPreference Continue
MaximumErrorCount 256
ReportErrorShowInnerException 0
ErrorView NormalView
Nézzük ezek közül azoknak a magyarázatát, amelyek a mindennapi használatkor érdekesek:
Változó
|
Magyarázat |
$Error |
A korábban már látott hibajelzések tömbje. |
$ErrorActionPreference |
Globális hibakezelési mód: Continue [default] - folytat, Stop - megáll, SilentlyContinue – figyelmeztetés nélkül továbbmegy, Inquire - rákérdez. |
$MaximumErrorCount |
Az $error tömb maximális mérete. Az ennél régebbi (nagyobb sorszámú)
hibajelzések kihullnak a tömbből. |
$ErrorView |
A
hibajelzések nézete: Normal vagy CategoryView |
Ezekkel tehát a hibák globális kezelését oldhatjuk meg, leginkább ugye az $ErrorActionPreference változóval.