Çoğu powershell cmdlet'inin -ErrorAction parametresi vardır, bir hata durumunda yapılması istenen eylem hakkında. Örneğin dosyanın olmaması durumunda hata vermeden sessizce devam etmesi için aşağıdaki gibi kullanım olabilir.
Ya da try-catch bloğu içinde her hatanın yakalanmasını sağlamak için Stop kullanmak isteyebiliriz.
Ama her cmdlet için bu parametreyi seçmemek için $ErrorActionPreference değişkenini kullanabiliriz. Varsayılan değer Continue'dir. Atanan değerler tırnal veya çift tırnak içinde verilmelidir.
$ErrorActionPreference="Stop"
Genel olarak Preference Variables kategorisinde bazı değişkenlerin arasında yer alır. Şu değerlerden birini alabilir:
Break: Bir hata olduğunda veya bir istisna tetiklendiğinde debugger'a gir.
Continue: (Varsayılan) Hata mesajını görüntüle ve devam et.
Inquire: Hata mesajını görüntüle ve devam etmek isteyip istemediğini kullanıcıya sor.
SilentlyContinue: Hata mesajı da gösterme, devam et.
Stop: Hatayı görüntüle ve dur. Stop değeri ayrıca ActionPreferenceStopException nesnesi de oluşturarak hata akışına gönderir.
---
https://www.meziantou.net/stop-the-script-when-an-error-occurs-in-powershell.htm
https://www.scriptwizards.net/powershell-erroractionpreference-explained
Hiç yorum yok:
Yorum Gönder