Jak używać parametru błędu PowerShell

Jak używać parametru błędu PowerShell
Narzędzia wiersza poleceń są zależne od użytkownika, gdy użytkownicy piszą polecenia na konsoli, a zatem może wystąpić błąd ludzki. Zwykle, jeśli polecenie nie powiedzie się w PowerShell, błąd jest wyświetlany na podstawie ustawionej wartości ErrorActionPreference. Jednak PowerShell's Błąd Parametr pozwala zmienić akcję, jeśli napotkany jest błąd. Parametr o błędach należy do rodziny powszechnych operatorów PowerShell, a zatem obsługuje różne opcje, takie jak kontynuacja, CILETYNECUNTINE, Ignoruj ​​i wiele innych. W tym poście parametr błędu PowerShell jest szczegółowo opisany z pewnym praktycznym zastosowaniem błędów.

Jak działa parametr błędu w PowerShell

Jeśli wystąpi błąd w PowerShell, wchodzi w działanie błędu PowerShell. Domyślnie błąd Kontynuować To pokazuje błąd i kontynuuje dalsze wykonanie. Dla każdego polecenia wartość ErrorActionPreference jest zastępowana opcją używaną w parametrze błędu. Błąd można zastosować do dowolnego cmdlet/funkcji w następujący sposób:

> -Błąd

Działanie błędu zależy głównie od określonych. Następujące opcje są obsługiwane przez parametr błędu:

  • Kontynuować: Ta opcja wyświetla błąd i kontynuuje wykonanie.
  • Ignorować: Jak sama nazwa wskazuje, kontynuowałoby wykonywanie bez wyświetlania żadnego błędu.
  • Pytać się: Ta opcja prosi użytkownika o potwierdzenie działania do podjęcia.
  • CILETY CONTINE: Ta opcja nie zgłasza żadnego błędu i będzie kontynuować wykonanie.
  • Zatrzymywać się: To działanie zatrzymuje wykonanie po napotkaniu błędu.
  • Wstrzymać: Ta opcja odnosi się tylko do przepływów pracy PowerShell. Po napotkaniu błędu, ta opcja umożliwia wznowienie pracy, w której wystąpił błąd.

Jak używać błędu w PowerShell

Ta sekcja pokazuje użycie parametru błędu w PowerShell:

Korzystanie z Kontynuuj z błędem

Jak wspomniano wcześniej, Kontynuować Opcja jest domyślną wartością zmiennej ErrorActionPreference, a jeśli zostanie przekazana z parametrem błędu, zwróci ten sam błąd. Zaimplementowaliśmy dwa następujące polecenia:

  1. Pierwsze polecenie jest wykonywane bez parametru błędu
  2. To samo polecenie jest wykonywane z opcją kontynuowania parametru błędu.

Ponadto powyższe polecenia są połączone z CMDLET-hostem zapisu w celu lepszego zrozumienia opcji kontynuowania, ponieważ kontynuuje wykonywanie po rzuceniu błędu.

Oba polecenia zwracają to samo wyjście, ponieważ domyślna wartość ErrorActionPReference jest kontynuowana, a zatem opcja kontynuowania parametru błędu nie ma wpływu na zmienną ErrorActionPreference.

> CD D: \; Write-host „Wykonanie kontynuowane!!"
> CD D: \ -erroraction kontynuuj; Write-host „Wykonanie kontynuowane!!"

Za pomocą zapytania z błędem

Jak kieruje nazwa opcji, opcja zapytania pyta, co zrobić z poleceniem. Polecenie napisane poniżej Wykonuje opcję zapytania z parametrem błędu.

> CD D: \ -erroraction Inquire; Write-host „Wykonanie kontynuowane!!"

Musimy wybrać akcję z następujących:

Naciśnij Y tak: To działanie przejdzie do wykonania polecenia:

Naciśnij A tak, aby wszystkie: naciśnij A, aby mieć taką samą akcję jak tak.

Naciśnij H dla komendy HATT: Uderzając H, polecenie nie zostanie wykonane po błędach, a zatem nie wykonuje części postawienia polecenia.

Naciśnij S dla zawieszenia: zawieszenie polecenia nie spowoduje żadnego działania.

Korzystanie z opcji Ignoruj ​​z błędem

Opcja ignorowania błędu omija błąd i wykonuje drugą część polecenia (jeśli jest dostarczona). Na przykład podane poniżej polecenie implementuje „Ignorować„Opcja z Błąd a wyjście pokazuje, że wykonywana jest tylko część zapisu (ponieważ jest wolna od błędów).

> CD D: \ -erroraction ignoruj; Write-host „Wykonanie kontynuowane!!"

Używanie SilelyConture z błędem

Opcja SilelyContinue pomija błąd i zaimplementowana jest część polecenia bezbłędnie. W poniższym poleceniu cmdlet zapisu jest używany do generowania błędu i jest wykonywany z opcją parametru o błędy.

Obserwuje się, że opcja ignoruj ​​i cicho łączą się generowanie tego samego wyjścia. Ale SimellyContinue zgłasza błąd zmiennej $ błędu PowerShell, podczas gdy ignorowanie nie dodaje tego błędu do $ błędu.

> Zapis „błąd napotkany” -erroraction SimelyContinue; Write-host „Wykonanie kontynuowane!!"

Używanie zatrzymania z błędem

Opcja stop, ponieważ nazwa sugeruje, powstrzymuje polecenie przed wykonaniem po napotkaniu błędu. Poniższe polecenie pokazuje implementację opcji Stop z błędem.

> Zapis „błąd napotkany” -erroraction stop; Write-host „Wykonanie kontynuowane!!"

Wniosek

Parametr błędu PowerShell umożliwia obsługę działań, jeśli wystąpi jakikolwiek błąd. Domyślnie PowerShell działa na Kontynuować Opcja obsługi błędów. Jednak operator błędów można użyć do zmiany opcji domyślnej. Ten zapis krótko wyjaśnia użycie błędu z kilkoma opcjami obsługiwanymi przez ten parametr. Każda opcja ma inną procedurę operacyjną, a parametr błędu zastępuje opcję domyślną (Kontynuować) Dla każdego polecenia.