עם זאת, משתמשי סקריפט Bash רבים רוצים לחזור עם קודי החזרה שונים ביציאה, אך הם מקבלים שגיאות. במדריך זה, נסביר את הגישות השונות להחזרת סקריפט Bash עם קודי החזרה שונים ביציאה.
Bash Script חוזר עם קודי החזרה שונים ביציאה
לפני שנעבור לשיטות, בואו נסתכל על קודי היציאה שיש להם משמעויות ספציפיות:
קודי יציאה | תיאור |
0 | הסקריפט מבוצע בהצלחה. |
1 | הסקריפט מבוצע עם שגיאות כלליות. |
שתיים | שימוש לא חוקי בחלק מהפקודות המובנות בסקריפט. |
126 | מציג את השגיאה עבור הפקודה המופעלת ולא ניתן לבצעה. |
127 | הפקודה לא קיימת בסקריפט. |
128 | מציג את קוד היציאה מחוץ לטווח או אות שגיאה קטלני. |
130 | CTRL+C מסיים את הסקריפט. |
255 | קוד שגיאה כללי של כשל של הסקריפט. |
איך מקבלים קודי החזרה ביציאה?
אתה רק צריך לכתוב את 'הד $?' פקודה כדי לקבל את קוד ההחזרה. לדוגמה, ברצונך להשוות בין שני מספרים באמצעות סקריפט Bash הבא:
לאחר שתפעיל את הסקריפט בטרמינל, הפעל את 'echo $?' כדי לקבל את קוד ההחזרה ביציאה:
. / comparison.sh
הֵד $?
ה-'comparison.sh' מבוצע בהצלחה. לכן מסופים מראים אפס כקוד ההחזרה. באופן דומה, תקבל לא אפס כביצוע מוצלח של התסריט. לדוגמה, אם אתה משתמש ב-Ls במקום בפקודה ls בסקריפט, ייתכן שתקבל את הקוד שאינו אפס כקוד ההחזרה:
כפי שניתן לראות בתמונה הקודמת, הטרמינל מציג 127 כקוד ההחזרה מכיוון שהסקריפט הכיל את הפקודה הלא נכונה:
בצע החזרת תסריט Bash עם קודי יציאה שונים
אתה יכול להגדיר באופן ידני את קודי היציאה בסקריפט. לדוגמה, אם אתה רוצה לקבל 255 כקוד היציאה, השתמש בסקריפט הבא:
כעת, הפעל את הסקריפט ולאחר מכן הרץ את 'הד $?' פקודה כדי לקבל 255 כקוד ההחזרה:
. / comparison.shהֵד $?
סיכום
זה הכל לגבי קודי היציאה שאתה עשוי לקבל לאחר הפעלת סקריפט Bash בלינוקס. קודי יציאה עוזרים למשתמש לזהות את הסטטוס של סקריפט Bash. אתה יכול גם להגדיר באופן ידני את קודי ההחזרה השונים ולהשתמש בהם. לפיכך, אתה יכול לקבל קוד יציאה שאינו מאפס במקום אפס גם אם הסקריפט מבוצע בהצלחה. אם אתה רוצה לדעת יותר על תסריטי Bash, עיין באתר הרשמי שלנו.