#PSTip Virheiden huomiotta jättäminen

Huomautus: Tämä vinkki vaatii PowerShell 3.0:n tai uudemman version.

PowerShellin avulla voit ohjata sitä, miten se reagoi ei-päättyvään virheeseen (virheeseen, joka ei pysäytä komentokomennon suorittamista) globaalisti muuttujan $ErrorActionPreference preferenssimuuttujan avulla tai komentokomennon tasolla parametrilla -ErrorAction. Molemmat tavat tukevat seuraavia arvoja:

Stop: Näyttää virheilmoituksen ja lopettaa suorituksen.
Inquire: Näyttää virheilmoituksen ja kysyy, haluatko jatkaa.
Continue: Näyttää virheilmoituksen ja jatkaa (Oletus) suoritusta.
SilentlyContinue: Ei vaikutusta. Virheilmoitusta ei näytetä ja suoritus jatkuu keskeytyksettä.

Virhe kirjoitetaan isäntäkoneelle ja lisätään $error-muuttujaan riippumatta siitä, minkä arvon valitset. PowerShell 3.0:sta alkaen vain komentotasolla (esim. ErrorAction) on lisäarvo: Ignore. Kun Ignore on määritetty, virhettä ei näytetä eikä lisätä $error-muuttujaan.

# 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