#PSTip Ignorování chyb

Poznámka: Tento tip vyžaduje PowerShell 3.0 nebo vyšší.

PowerShell umožňuje řídit, jak bude reagovat na neukončující chybu (chybu, která nezastaví zpracování rutiny) globálně pomocí proměnné předvoleb $ErrorActionPreference nebo na úrovni rutiny pomocí parametru -ErrorAction. Oba způsoby podporují následující hodnoty:

Stop: Zobrazí chybovou zprávu a zastaví provádění příkazu.
Inquire:
Continue: Zobrazí chybovou zprávu a zeptá se, zda chcete pokračovat: Zobrazí chybové hlášení a pokračuje (výchozí) ve vykonávání.
Tišepokračovat: Žádný účinek. Chybové hlášení se nezobrazí a provádění pokračuje bez přerušení.

Nezáleží na tom, kterou hodnotu zvolíte, chyba se zapíše do hostitele a přidá se do proměnné $error. Počínaje prostředím PowerShell 3.0 máme pouze na úrovni příkazu (např. ErrorAction) další hodnotu: Ignorovat. Je-li zadána hodnota Ignore, chyba se nezobrazí ani nepřidá do proměnné $error.

# check the error countPS> $error.Count0# use SilentlyContinue to ignore the errorPS> Get-ChildItem NoSuchFile -ErrorAction SilentlyContinue# error is ignored but is added to the $error variablePS> $error.Count1PS> $error.Clear()# Using Ignore truly discards the error and the error is not added to $error variablePS> Get-ChildItem NoSuchFile -ErrorAction IgnorePS> $error.Count0