Basit komut satırı cmdlet'leriyle hataların nasıl ele alınacağı aşağıda açıklanmıştır
- Sık sık bir PowerShell kullanıcısıysanız, bir hatayı gösteren kırmızı metinle dolu bir ekranla karşılaşmışsınızdır.
- Hatanın kesin nedenini belirlemek zor olabilir, ancak PowerShell'in try-catch komutuyla hatayı yakalayabilir ve ona göre hareket edebilirsiniz.
- Bu yazıda, try catch komutuna nasıl başlayacağınızı gösteriyoruz.
XİNDİRME DOSYASINI TIKLAYARAK KURULUM
- Restoro PC Onarım Aracını İndirin Patentli Teknolojilerle gelen (patent mevcut Burada).
- Tıklamak Taramayı Başlat PC sorunlarına neden olabilecek Windows sorunlarını bulmak için.
- Tıklamak Hepsini tamir et bilgisayarınızın güvenliğini ve performansını etkileyen sorunları gidermek için.
- Restoro tarafından indirildi 0 bu ay okuyucular
Try catch, hataları ve istisnaları yakalamak için PowerShell içinde kullanılan bir kontrol akışı ifadesidir. Komut dosyanızdaki hataları işlemek ve ilerlemesini durdurmak istediğinizde kullanılabilir.
Rağmen Güç kalkanı güçlü bir Windows komut satırı aracıdır, bazen bir hata döndürüp döndürmediğini yorumlamak zor olabilir. Nerede yanlış yaptığınızı anlamaya çalışırken günlerce sıkışıp kalabilirsiniz. İşte burada try-catch komutu devreye giriyor ve size bu makalede onu nasıl kullanacağınızı gösteriyoruz.
PowerShell'de bir deneme yakalama var mı?
Try Catch deyimleri, PowerShell'de hataları ve istisnaları işlemenin güçlü bir yoludur. Sistem istisnalarından kullanıcı tarafından oluşturulan hatalara kadar her türlü hatayı işleyebilirler.
Nasıl çalıştıklarını anlamadan önce, ne anlama geldiklerini ve neler yapabildiklerini bilmeniz gerekir.
Engellemeyi dene
Try bloğu, bir hata oluştuğunda çalıştırılan ilk kod bloğudur. Herhangi bir kodu çalıştırabilir, ancak hatalar için özel bir şey yapmaz. Bir hata oluşursa PowerShell, hatayla ilgilenmenizi beklemeden betiğin geri kalanını yürütmeye devam edecektir.
Bir Try Catch deyimi, bir veya daha fazla Try bloğundan oluşur. Kodun düzgün çalışması için bu blokların belirli bir sıraya yerleştirilmesi gerekir.
Bu blok, herhangi bir hata meydana gelmemişse hemen yürütülmeye başlar. Bu blok sırasında bir hata oluşursa, o bloktan hemen çıkar ve eşleşen Catch blok(lar)ı içinde kodu yürütmeye devam eder.
Yakalama Bloğu
Catch bloğu, hataları ve diğer istisnaları işleyebilen PowerShell işlem hattının bir parçasıdır. catch bloğu herhangi bir değer döndürmez, ancak betiğinizdeki hata koşulunu işlemenize izin verir.
Bu blok, Try blok(lar)ı içinde kod yürütülürken hataları işleyen kodu içerir. Komut dosyası içindeki herhangi bir Try bloğu sırasında bir hata oluşursa yürütülür.
try-catch yapısı betiğinizdeki farklı hataları işlemenizi sağlar. Örneğin, bir değer döndürmeyen bir işleviniz varsa, bir hata koşulu olup olmadığını kontrol etmek için try-catch yapısını kullanabilir ve ardından varsa bazı eylemler gerçekleştirebilirsiniz.
PowerShell'de try catch nasıl yazarsınız?
Uzman ipucu:
SPONSORLU
Özellikle bozuk depolar veya eksik Windows dosyaları söz konusu olduğunda, bazı bilgisayar sorunlarının üstesinden gelmek zordur. Bir hatayı düzeltmekte sorun yaşıyorsanız, sisteminiz kısmen bozuk olabilir.
Makinenizi tarayacak ve hatanın ne olduğunu belirleyecek bir araç olan Restoro'yu kurmanızı öneririz.
buraya tıklayın indirmek ve onarmaya başlamak için.
Bu komut dosyası testi sırasında, Windows PowerShell ISE'yi (Entegre Komut Dosyası Ortamı) kullanacağımıza dikkat etmek önemlidir. Bu, Windows PowerShell etkileşimli kabuk deneyimidir.
ISE, etkileşimli bir komut istemiyle betik yazmak, hata ayıklamak ve test etmek için mükemmel bir geliştirme ortamı sağlar. PowerShell betiklerini hızla geliştirmenize, test etmenize ve hata ayıklamanıza olanak tanıyan eksiksiz bir entegre komut dosyası oluşturma, hata ayıklama ve düzenleme araçları paketi içerir.
ISE ayrıca kodunuz üzerinde etkileşimli olarak adım adım ilerlemenizi sağlayan komut dosyası hata ayıklama özelliklerini de içerir.
- I vur pencereler anahtar türü Powershell İMKB ve tıklayın Yönetici olarak çalıştır.
- Olumlu bir hata verecek bir kod bulun. Bir try-catch bloğunun sözdizimi şöyledir:
Denemek {
// Hataya neden olabilecek kod
} catch { // try bloğu yürütülürken bir hata oluşursa yürütülecek kod
}
- Örnek olarak aşağıdakileri kullanabiliriz:
Denemek {
Write-Host "Bu herhangi bir istisna oluşturmayacaktır."
} Yakala [Sistem. İstisna] {
Write-Host "Bu bir istisna oluşturacaktır." }
İki blok çalışıp hataları yakalayabilirken, hatayı temizlemek için başka bir bloğa ihtiyacınız var. Try bloğunun çalıştırılmasından sonra ortamı temizlemek için Nihayet bloğu kullanılır.
- Bootstrapper.exe: Nedir ve Kaldırmalısınız?
- Onedrive ve Dropbox: 2023'te Sizin İçin Hangisi Daha İyi?
PowerShell'de hata yoksa yakalamayı nasıl deneyebilirim?
Hata, PowerShell betiği çalışırken oluşan ve betiğin bir sonraki kod satırına devam etmesini engelleyen bir durumdur. Harici (eksik bir dosya veya geçersiz değişken gibi) veya dahili (sözdizimi hatası) bir şeyden kaynaklanabilir.
PowerShell'de iki tür hata vardır: sonlanan ve sonlanmayan. Sonlandırma hatası, komut dosyasının yürütülmesini durdurur. Öte yandan, sonlandırılmayan bir hata, komut dosyasının yürütülmesini durdurmayan ancak konsola çıktı oluşturan bir hatadır.
try/catch bloğu, try anahtar sözcüğüyle hataları yakalayarak ve ardından bir hata oluştuğunda yürütülecek bir eylem bloğu sağlayarak hataları ele almamızı sağlar. Bir hata oluştuğunda PowerShell, Catch bloğundaki kodu yürütür.
Herhangi bir hata oluşmazsa, catch bloğu yürütülmez ve komut dosyası normal şekilde devam eder. Eğer Pow'da yakalamayı deneershell çalışmıyor, nasıl düzelteceğimizle ilgili ayrıntılı makalemize göz atın.
Aşağıdaki yorum bölümünde try catch komut satırını nasıl kullandığınızı bize bildirin.
Hâlâ sorun mu yaşıyorsunuz? Bunları bu araçla düzeltin:
SPONSORLU
Yukarıdaki öneriler sorununuzu çözmediyse, bilgisayarınızda daha derin Windows sorunları olabilir. Öneririz bu PC Onarım aracını indirme (TrustPilot.com'da Harika olarak derecelendirildi) bunları kolayca ele almak için. Kurulumdan sonra, sadece tıklayın Taramayı Başlat düğmesine ve ardından düğmesine basın Hepsini tamir et.