Какво е Try Catch в PowerShell и как да го използвате

Ето как да обработвате грешки с обикновени командни команди

  • Ако често използвате PowerShell, очевидно сте срещали екран, пълен с червен текст, показващ грешка.
  • Може да е трудно да се определи точната причина за грешката, но с командата try-catch на PowerShell можете да уловите грешката и да действате по нея.
  • В тази статия ви показваме как да започнете с командата try catch.

хИНСТАЛИРАЙТЕ КАТО КЛИКНЕТЕ ВЪРХУ ИЗТЕГЛЯНЕ НА ФАЙЛА

За да коригирате различни компютърни проблеми, препоръчваме Restoro PC Repair Tool:Този софтуер ще поправи често срещани компютърни грешки, ще ви предпази от загуба на файлове, зловреден софтуер, хардуерен срив и ще оптимизира вашия компютър за максимална производителност. Коригирайте проблемите с компютъра и премахнете вирусите сега в 3 лесни стъпки:
  1. Изтеглете Restoro PC Repair Tool който идва с патентовани технологии (наличен патент тук).
  2. Кликнете Започни сканиране за да намерите проблеми с Windows, които може да причиняват проблеми с компютъра.
  3. Кликнете Поправи всичко за отстраняване на проблеми, засягащи сигурността и производителността на вашия компютър.
  • Restoro е изтеглен от 0 читатели този месец.

Try catch е команда за контролен поток, която се използва в PowerShell за улавяне на грешки и изключения. Може да се използва, когато искате да обработите грешки във вашия скрипт и да го спрете да продължи.

Макар че PowerShell е мощен инструмент за команден ред на Windows, понякога може да бъде трудно да се интерпретира, ако върне грешка. Може да сте блокирани с дни, опитвайки се да разберете къде сте сбъркали. Това е мястото, където идва командата try-catch и ние ви показваме как да я използвате в тази статия.

Има ли пробна уловка в PowerShell?

Изявленията Try Catch са мощен начин за обработка на грешки и изключения в PowerShell. Те могат да обработват всички видове грешки, от системни изключения до грешки, генерирани от потребителя.

Преди да разберете как работят, първо трябва да знаете какво означават и какво могат да направят.

Опитайте Блокиране

Опитният блок е първият блок от код, който се изпълнява при възникване на грешка. Може да изпълнява всеки код, но не прави нищо специално за грешки. Ако възникне грешка, PowerShell ще продължи да изпълнява останалата част от скрипта, без да чака да се справите с грешката.

Инструкцията Try Catch се състои от един или повече блокове Try. Тези блокове трябва да бъдат поставени в определен ред, за да може кодът да се изпълни правилно.

Този блок започва да се изпълнява незабавно, ако не е възникнала грешка. Ако възникне грешка по време на този блок, той незабавно ще излезе от този блок и ще продължи да изпълнява кода в съвпадащия(те) блок(ове) Catch.

Хвани блок

Блокът catch е част от конвейера на PowerShell, който може да обработва грешки и други изключения. Блокът catch не връща никаква стойност, но ви позволява да се справите с условието за грешка във вашия скрипт.

Този блок съдържа кода, който обработва грешки при изпълнение на код в блока(овете) Try. Той ще се изпълни, ако възникне грешка по време на който и да е блок Try в рамките на скрипта.

Конструкцията try-catch ви позволява да обработвате различни грешки във вашия скрипт. Например, ако имате функция, която не връща стойност, можете да използвате конструкцията try-catch, за да проверите за състояние на грешка и след това да извършите някакво действие, ако е имало такова.

Как се пише try catch в PowerShell?

Експертен съвет:

СПОНСОРИРАНА

Някои проблеми с компютъра са трудни за справяне, особено когато става въпрос за повредени хранилища или липсващи файлове на Windows. Ако имате проблеми с коригирането на грешка, системата ви може да е частично повредена.
Препоръчваме да инсталирате Restoro, инструмент, който ще сканира вашата машина и ще идентифицира каква е грешката.
Натисни тук за да изтеглите и започнете да поправяте.

Важно е да се отбележи, че по време на този тест за скриптове ще използваме Windows PowerShell ISE (интегрирана среда за скриптове). Това е интерактивната обвивка на Windows PowerShell.

ISE предоставя отлична среда за разработка за писане, отстраняване на грешки и тестване на скриптове с интерактивен команден ред. Той включва пълен набор от интегрирани инструменти за скриптове, отстраняване на грешки и редактиране, които ви позволяват бързо да разработвате, тествате и отстранявате грешки в PowerShell скриптове.

ISE също включва функции за отстраняване на грешки в скриптове, които ви позволяват да преминете през кода си интерактивно.

  1. Удари Windows ключ, вид Powershell ISE и щракнете Изпълни като администратор.
  2. Измислете код, който ще даде положителна грешка. Синтаксисът за блок try-catch е:

Опитвам { 
// Код, който може да причини грешка 
} catch { // Код за изпълнение, ако възникне грешка по време на изпълнението на блока try
}

  1. Като пример можем да използваме следното:

Опитвам {
Write-Host "Това няма да предизвика изключение."
} Хванете [System. Изключение] {
Write-Host "Това ще предизвика изключение." }

Въпреки че двата блока могат да работят и да улавят грешки, имате нужда от друг блок, за да изчистите грешката. Блокът Finally се използва за почистване на средата след изпълнението на блока try.

Прочетете повече по тази тема
  • Bootstrapper.exe: Какво е това и трябва ли да го премахнете?
  • Onedrive срещу Dropbox: Кое е по-добро за вас през 2023 г.?

Как да опитам catch, ако няма грешка в PowerShell?

Грешка е състояние, което възниква, докато скриптът на PowerShell работи и не позволява на скрипта да продължи към следващия ред от код. Може да бъде причинено от нещо външно (като липсващ файл или невалидна променлива) или вътрешно (синтактична грешка).

PowerShell има два вида грешки: прекратяване и непрекратяване. Грешка при прекратяване спира изпълнението на скрипта. От друга страна, непрекратяващата грешка е тази, която не спира изпълнението на скрипта, но генерира изход към конзолата.

Блокът try/catch ни позволява да обработваме грешки, като ги улавяме с ключовата дума try и след това предоставяме блок за действие, който ще бъде изпълнен, ако възникне грешка. Когато възникне грешка, PowerShell изпълнява кода в блока Catch.

Ако не възникне грешка, catch блокът няма да се изпълни и скриптът ще продължи както обикновено. Ако опитайте се да уловите в Powershell не работи, вижте нашата подробна статия за това как да го поправите.

Кажете ни как използвате командния ред try catch в секцията за коментари по-долу.

Все още имате проблеми? Коригирайте ги с този инструмент:

СПОНСОРИРАНА

Ако съветите по-горе не са разрешили проблема ви, вашият компютър може да има по-сериозни проблеми с Windows. Препоръчваме изтегляне на този инструмент за поправка на компютър (оценен като страхотен на TrustPilot.com), за да се справите лесно с тях. След инсталирането просто щракнете върху Започни сканиране и след това натиснете Поправи всичко.

Поправка: Терминът не се разпознава като име на Cmdlet

Поправка: Терминът не се разпознава като име на CmdletPowershell

Проверете своя скрипт PowerShell за грешки, за да коригирате този проблемИнсталирайте необходимите модули, за да коригирате термина не се разпознава като грешка в името в PowerShell.Уверете се, че ...

Прочетете още
Wsmprovhost.exe: Какво е това и как да спрете високото му натоварване на процесора

Wsmprovhost.exe: Какво е това и как да спрете високото му натоварване на процесораВисока употреба на процесораPowershell

Проверете експертни решения за намаляване на използването на процесораThe wsmprovhost.exe процесът е критичен и е свързан с отдалечени сесии в Windows.Някои потребители съобщиха за това wsmprovhost...

Прочетете още