როგორ გამოვასწოროთ, რომ Catch PowerShell არ მუშაობს?

ამის გამოსასწორებლად მოძებნეთ არასწორი სინტაქსი

  • თუ Try-Catch არ მუშაობს PowerShell-ზე, თქვენ უნდა შეამოწმოთ არასწორი სინტაქსი და შეცდომის მოქმედების მნიშვნელობები.
  • ეს სახელმძღვანელო აგიხსნით პრობლემის გადაჭრის სხვადასხვა გზებს.
სცადეთ catch powershell არ მუშაობს

Xდააინსტალირეთ ჩამოტვირთვის ფაილზე დაწკაპუნებით

კომპიუტერის სხვადასხვა პრობლემის მოსაგვარებლად, ჩვენ გირჩევთ Restoro PC Repair Tool:ეს პროგრამული უზრუნველყოფა გამოასწორებს კომპიუტერის გავრცელებულ შეცდომებს, დაგიცავს ფაილის დაკარგვისგან, მავნე პროგრამებისგან, ტექნიკის უკმარისობისგან და ოპტიმიზებს თქვენს კომპიუტერს მაქსიმალური მუშაობისთვის. მოაგვარეთ კომპიუტერის პრობლემები და წაშალეთ ვირუსები ახლა 3 მარტივი ნაბიჯით:
  1. ჩამოტვირთეთ Restoro PC Repair Tool რომელიც მოყვება დაპატენტებულ ტექნოლოგიებს (ხელმისაწვდომია პატენტი აქ).
  2. დააწკაპუნეთ სკანირების დაწყება იპოვონ Windows-ის პრობლემები, რამაც შეიძლება გამოიწვიოს კომპიუტერის პრობლემები.
  3. დააწკაპუნეთ შეკეთება ყველა პრობლემების გადასაჭრელად, რომლებიც გავლენას ახდენს თქვენი კომპიუტერის უსაფრთხოებასა და შესრულებაზე.
  • Restoro ჩამოტვირთულია 0 მკითხველი ამ თვეში.

Try-Catch განცხადებაში PowerShell ამუშავებს შეცდომებს და გამონაკლისებს თქვენს კოდში. თუ Try-Catch არ მუშაობს გამონაკლისით PowerShell-ზე, ეს შეიძლება იყოს იმედგაცრუებული.

ამ სახელმძღვანელოში ჩვენ განვიხილავთ პრობლემის მოგვარების ყველა გზას, პრობლემის სავარაუდო მიზეზებთან ერთად. Დავიწყოთ!

რა იწვევს Try-Catch-ს არ მუშაობს PowerShell-ში?

შეიძლება არსებობდეს სხვადასხვა მიზეზი, რის გამოც განცხადება არ მუშაობს PowerShell-ზე. აქ არის რამდენიმე ყველაზე გავრცელებული:

  • ნაგულისხმევი ErrorAction ნაკრები - თუ ErrorAction დაყენებულია გაგრძელებაზე, მაშინ Try-Catch არ იმუშავებს ისე, როგორც მოსალოდნელი იყო.
  • სინტაქსის შეცდომები – თუ გამოყენებული სინტაქსი არასწორია, ფორმატირება არასწორია, ან აკლია საკვანძო სიტყვები, Try-Catch არ იმუშავებს.
  • Cmdlet ან ფუნქციის ქცევა – ზოგიერთ ფუნქციას და cmdlet-ს გააჩნია შეცდომების დამუშავების ქცევა, რომელიც შესაძლოა არ იყოს თავსებადი Try-Catch-თან.
  • არასწორი ლოგიკა ან ცვლადების გამოყენება - თუ არის არასათანადო გამოყენება ცვლადები ან არასწორი ლოგიკა, მაშინ Try-Catch არ იმუშავებს.

რა გავაკეთო, თუ Try-Catch არ მუშაობს PowerShell-ზე?

1. შეამოწმეთ სინტაქსი

  1. პირველ რიგში, თქვენ უნდა შეამოწმოთ, იყენებდით თუ არა სწორ სინტაქსს PowerShell-ის ვერსიისთვის, რომელსაც იყენებთ.
  2. შემდეგი, შეამოწმეთ, რომ თქვენ მოათავსეთ Try და Catch ბლოკები სწორი თანმიმდევრობით.
  3. Try-Catch-ის ძირითადი სინტაქსი მოცემულია ქვემოთ. ჩაანაცვლეთ # კოდი აქ გასაშვებად კოდით და # შეცდომის დამუშავების კოდი აქ შეცდომის დამუშავების კოდით:

სცადე {
აქ გასაშვებად # კოდი
}
დაჭერა {
კოდის დამუშავების # შეცდომა აქ
}

2. შეამოწმეთ, აფიქსირებთ თუ არა კონკრეტულ შეცდომას 

თქვენ უნდა გადაამოწმოთ, იჭერთ თუ არა კონკრეტულ შეცდომებს, რომელთა მოგვარებაც გსურთ და არა ყველა შეცდომას. მიჰყევით ამ ნაბიჯებს იგივეს გასაკეთებლად:

  1. დააჭირეთ ფანჯრები გასაღები, ტიპი PowerShell, და დააწკაპუნეთ Ადმინისტრატორის სახელით გაშვება.სკრიპტი
  2. შეცდომის ხაფანგში, თქვენ უნდა გამოიყენოთ $ ცვლადი Catch ბლოკში, რათა მიიღოთ ინფორმაცია დაშვებული შეცდომის შესახებ. მოდით შევამოწმოთ იგივე მაგალითი, რომ უკეთ გავიგოთ: სცადე {
    Get-ChildItem -გზა C:\DoesNotExist
    }
    დაჭერა {
    თუ ($_. გამონაკლისი. GetType().Name -eq "DirectoryNotFoundException") {
    ჩაწერეთ-გამომავალი "ცნობარი ვერ მოიძებნა".
    }
    სხვა {
    გადაყარეთ $_.გამონაკლისი|
    }
    }

3. დააყენეთ ErrorAction მნიშვნელობა 

ErrorAction-ის ნაგულისხმევი მნიშვნელობა არის Continue; თუმცა, იმისათვის, რომ Try-Catch იმუშაოს, თქვენ უნდა დააყენოთ ErrorAction მნიშვნელობა Stop-ზე. ამისათვის მიჰყევით ამ ნაბიჯებს:

  1. გახსენით PowerShell როგორც ადმინისტრატორი.
  2. თქვენ უნდა გამოიყენოთ Set-StrictMode cmdlet ან ErrorAction პარამეტრი ცალკეულ cmdlet-ებზე. ამის უკეთ გასაგებად, მოდით შევხედოთ მაგალითს:
სცადეთ Catch ErrorAction Stop PowerShell-ით

სცადე {
Get-ChildItem -გზა C:\DoesNotExist -ErrorAction Stop
}
დაჭერა {
Write-Output $ _. გამონაკლისი. შეტყობინება
}

წაიკითხეთ მეტი ამ თემის შესახებ
  • აი, როგორ აღადგინოთ თქვენი BitLocker გასაღები OneDrive-დან
  • როგორ გამოვიყენოთ ტელეფონის ბმული iPhone-ისთვის Windows 11-ზე
  • DaVinci Resolve High CPU-ს გამოყენება: როგორ შევამციროთ იგი

4. გამოიყენეთ გამონაკლისის სწორი ტიპი

მნიშვნელოვანია სწორი გამონაკლისების გამოყენება Try-Catch-ის გამოყენებისას, რადგან მას შეუძლია მხოლოდ სისტემის გამონაკლისების დამუშავება. გამონაკლისის ტიპი. თუ თქვენ იყენებდით არასისტემას. გამონაკლისი შეცდომები, მაშინ Try-Catch არ იმუშავებს.

რაც შეეხება არასისტემას. გამონაკლისი, თქვენ უნდა გამოიყენოთ NET” Framework-ის შეცდომების დამუშავების მექანიზმი ან დაიჭიროთ შეცდომა.

5. მოერიდეთ სკრიპტის შეწყვეტას 

თუ თქვენი სკრიპტი წყდება Catch ბლოკამდე მისვლამდე, Try-Cach-ს არ ექნება შანსი დამუშავდეს შეცდომა. სკრიპტის შეწყვეტის თავიდან ასაცილებლად, მიჰყევით ამ ნაბიჯებს:

  1. გაშვება PowerShell ადმინისტრატორის უფლებებით.
  2. თქვენ უნდა გამოიყენოთ განაგრძეთ განცხადება შემდეგ დაიჭირე ბლოკი. გავიგოთ ეს მაგალითით:
ბოლოს სცადე დაჭერა

სცადე {
Get-ChildItem -გზა C:\DoesNotExist
}
დაჭერა {
Write-Output $ _. გამონაკლისი. შეტყობინება
განაგრძეთ
}

6. გამოიყენეთ Try-Catch-Finally

 თუ Try-Catch განცხადება ჯერ კიდევ არ მუშაობს, ამის ნაცვლად შეგიძლიათ გამოიყენოთ Try-Catch-Finally კონსტრუქცია. ეს უზრუნველყოფს თქვენი კოდის დასრულებას, თუნდაც გამონაკლისი იყოს.

  1. გახსენით PowerShell როგორც ადმინისტრატორი.
  2. ჩაწერეთ ბრძანება სცადე-დაჭერა-ბოლოს. აქ არის მაგალითი სცენარის უკეთ გასაგებად:

სცადე {
# თქვენი კოდი აქ

დაჭერა [სისტემ. გამონაკლისი] {
# გამონაკლისის დამუშავების კოდი აქ

ბოლოს {
 # გასუფთავების კოდი აქ
}

ასე რომ, ეს არის გზები, რომლითაც შეგიძლიათ გადაჭრათ Try Catch არ მუშაობს PowerShell-ზე. თუ თქვენ გაქვთ რაიმე შეკითხვა Try-Catch-თან დაკავშირებით, გთხოვთ, მიუთითოთ ისინი კომენტარების განყოფილებაში ქვემოთ. მოხარული ვიქნებით დაგეხმაროთ!

თუ გსურთ იცოდეთ როგორ შეაჩეროთ PowerShell-ის დახურვა სკრიპტის გაშვების შემდეგ, შეგიძლიათ წაიკითხოთ ეს.

ჯერ კიდევ გაქვთ პრობლემები? გაასწორეთ ისინი ამ ხელსაწყოთი:

სპონსორირებული

თუ ზემოხსენებულმა რჩევებმა არ გადაჭრა თქვენი პრობლემა, თქვენს კომპიუტერს შეიძლება ჰქონდეს უფრო ღრმა Windows პრობლემები. Ჩვენ გირჩევთ ამ კომპიუტერის სარემონტო ხელსაწყოს ჩამოტვირთვა (შეფასებულია მშვენივრად TrustPilot.com-ზე), რათა მათ მარტივად მივმართოთ. ინსტალაციის შემდეგ უბრალოდ დააწკაპუნეთ სკანირების დაწყება ღილაკს და შემდეგ დააჭირე შეკეთება ყველა.

შემქმნელი PowerShell ახლა ხელმისაწვდომია Visual Studio 2019-ში

შემქმნელი PowerShell ახლა ხელმისაწვდომია Visual Studio 2019-შიPowershellᲕიზუალური სტუდია

მაიკროსოფტი ცოტა ხნის წინ გამოაცხადა Visual Studio 2019-ის ახალი ინსტრუმენტი.შემქმნელი PowerShell მოდის მომხმარებლის გამოხმაურების შედეგადმომხმარებლის გამოხმაურების საფუძველზე, კომპანიამ დაამატა De...

Წაიკითხე მეტი
PowerShell ავტომატური დასრულება არ მუშაობს? სცადეთ ეს მეთოდები

PowerShell ავტომატური დასრულება არ მუშაობს? სცადეთ ეს მეთოდებიPowershell

კომპიუტერის სხვადასხვა პრობლემის მოსაგვარებლად გირჩევთ DriverFix- ს:ეს პროგრამა თქვენს დრაივერებს განაგრძობს მუშაობას და ამით გიცავთ კომპიუტერის ჩვეულებრივი შეცდომებისგან და აპარატურის უკმარისობისგ...

Წაიკითხე მეტი
PowerShell ახლა ღია წყაროა და ხელმისაწვდომია Linux- ზე

PowerShell ახლა ღია წყაროა და ხელმისაწვდომია Linux- ზეLinuxPowershell

PowerShell არის ამოცანის ავტომატიზაცია და კონფიგურაციის მართვის ჩარჩო, რომელიც გამოდის ბრძანების ხაზის სახით. ეს მნიშვნელოვანი საშუალებაა ქსელის ადმინისტრატორებისთვის, რაც მათ საშუალებას აძლევს, გა...

Წაიკითხე მეტი