PowerShell: ErrorActionPreference, a kontynuacja pracy komend

9-cze-2018

W poniższych przykładach wysyłamy zapytanie WMI do do komputera CantorXX (który nie istnieje) i localhost (który oczywiście istnieje i odpowiada poprawnie)

CONTINUE

To domyślna wartość ErrorActionPreference. Jak widać na obrazku poniżej polecenie po napotkaniu błędu zgłasza ten błąd, ale potem KONTYNUUJE i kontaktuje się z drugim komputerem

SILENTLYCONTINUE

Przy połączeniu do pierwszego komputera oczywiście dochodzi do błedu, ale nie jest on wyświetlany. Błąd jest „zamaiaty pod dywan” a potem program kontynuuje i wysyła zapytanie do drugiego komputera

STOP

W przypadku tego ustawienia skrypt zareaguje „alergicznie”. Pierwszy błąd i akcja się zatrzymuje. Nie udało się połączyć z pierwszym komputerem, to z kolejnymi nawet nie próbuję:

INQUIRE

To taki trochę dziwny tryb. W przypadku błędu komenda zatrzymuje się i pyta, tylko w sumie o co…? Pytanie jest o kontynuację. Jeśli nei chcesz kontynuować daj „Halt command”, a jeśli chcesz wejść w tryb debug – daj Suspend.

 

Komentarze:

  1. Gość napisał,

    A co jest bardziej uniwersalne dla „domowego” informatyka, PowerShell czy Bash?

Autor: Rafał Kraik