הנה כיצד לטפל בשגיאות באמצעות cmdlets פשוטים של שורת הפקודה
- אם אתה משתמש PowerShell תכוף, ברור שנתקלת במסך מלא בטקסט אדום המציין שגיאה.
- זה יכול להיות קשה לאתר את הסיבה המדויקת לשגיאה, אבל עם פקודת try-catch של PowerShell, אתה יכול לתפוס את השגיאה ולפעול על פיה.
- במאמר זה, אנו מראים לך כיצד להתחיל עם הפקודה try catch.
איקסהתקן על ידי לחיצה על הורד את הקובץ
- הורד את Restoro PC Repair Tool שמגיע עם טכנולוגיות פטנט (פטנט זמין כאן).
- נְקִישָׁה התחל סריקה כדי למצוא בעיות של Windows שעלולות לגרום לבעיות במחשב.
- נְקִישָׁה תקן הכל כדי לתקן בעיות המשפיעות על האבטחה והביצועים של המחשב שלך.
- Restoro הורד על ידי 0 הקוראים החודש.
Try catch היא הצהרת זרימת בקרה המשמשת בתוך 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 כולל גם תכונות ניפוי סקריפטים המאפשרות לך לעבור דרך הקוד שלך באופן אינטראקטיבי.
- לחץ על חלונות סוג מפתח Powershell ISE ולחץ הפעל כמנהל.
- תמציא קוד שיתן שגיאה חיובית. התחביר של בלוק טרי-catch הוא:
נסה {
// קוד שעלול לגרום לשגיאה
} catch { // קוד לביצוע אם מתרחשת שגיאה במהלך ביצוע בלוק ה-try
}
- כדוגמה, אנו יכולים להשתמש בדברים הבאים:
נסה {
Write-Host "זה לא יביא שום חריג."
} תפוס [מערכת. יוצא מן הכלל] {
מארח כתיבה "זה יביא חריג." }
בעוד ששני הבלוקים יכולים לפעול ולתפוס שגיאות, אתה צריך בלוק נוסף כדי לנקות את השגיאה. הבלוק Finally משמש לניקוי הסביבה לאחר ביצוע הבלוק לנסות.
- Bootstrapper.exe: מה זה והאם עליך להסיר אותו?
- Onedrive לעומת Dropbox: איזה מהם עדיף לך ב-2023?
כיצד אוכל לנסות לתפוס אם אין שגיאה ב- PowerShell?
שגיאה היא מצב המתרחש בזמן שהסקריפט של PowerShell פועל ומונע מהסקריפט להמשיך לשורת הקוד הבאה. זה יכול להיגרם ממשהו חיצוני (כמו קובץ חסר או משתנה לא חוקי) או פנימי (שגיאת תחביר).
ל-PowerShell יש שני סוגים של שגיאות: מסתיימות ושגיאות שאינן מסתיימות. שגיאה מסיימת עוצרת את ביצוע הסקריפט. מצד שני, שגיאה שאינה מסתיימת היא כזו שאינה עוצרת את ביצוע הסקריפט אלא מייצרת פלט לקונסולה.
חסימת try/catch מאפשרת לנו לטפל בשגיאות על ידי תפיסתן עם מילת המפתח try ולאחר מכן מתן חסימת פעולה שתתבצע אם תתרחש שגיאה. כאשר מתרחשת שגיאה, PowerShell מבצעת את הקוד בבלוק Catch.
אם לא מתרחשת שגיאה, בלוק ה-catch לא יבוצע, והסקריפט ימשיך כרגיל. אם ה נסה לתפוס בפאוershell לא עובד, עיין במאמר המפורט שלנו כיצד לתקן זאת.
ספר לנו כיצד אתה משתמש בשורת הפקודה try catch בקטע ההערות למטה.
עדיין יש בעיות? תקן אותם עם הכלי הזה:
ממומן
אם העצות לעיל לא פתרו את הבעיה שלך, המחשב שלך עלול להיתקל בבעיות Windows עמוקות יותר. אנחנו ממליצים הורדת כלי תיקון מחשב זה (מדורג נהדר ב-TrustPilot.com) כדי לטפל בהם בקלות. לאחר ההתקנה, פשוט לחץ על התחל סריקה לחצן ולאחר מכן לחץ על תקן הכל.