כיצד לבדוק את קיומו של ארגומנט קלט בסקריפט של Bash Shell
ישנן שלוש דרכים שונות:
שיטה 1: שימוש בפקודה 'בדיקה'.
הפקודה 'בדיקה', הידועה גם כפקודה '[', היא פקודה מובנית ב-Bash הבודקת תנאים שונים. אחד התנאים שאנו יכולים לבדוק באמצעות הפקודה 'test' הוא האם קיים משתנה או לא. הנה קוד לדוגמה כדי לבדוק אם קיים ארגומנט קלט באמצעות הפקודה 'test':
#!/bin/bash
אם [ -עם '$1' ]
לאחר מכן
הֵד 'חסר ארגומנט קלט.'
יְצִיאָה 1
לִהיוֹת
הֵד 'קיים ארגומנט קלט.'
כאן נעשה שימוש באפשרות '-z' עם הפקודה 'test' כדי לבדוק אם ארגומנט הקלט הוא מחרוזת ריקה או לא. הסקריפט יוציא הודעת שגיאה ויצא עם קוד מצב של 1 אם ארגומנט הקלט הוא מחרוזת ריקה. אחרת, הסקריפט ימשיך לפעול, להלן סיפקתי וקלטתי ארגומנט עבור הקוד כך שהוא יציג את ההודעה על קיומו של קלט של ארגומנט:
שיטה 2: שימוש במשתנה '$#'.
ה '$#' משתנה מאחסן את מספר ארגומנטי הקלט המועברים לסקריפט. אם הסקריפט מצפה לפחות ארגומנט קלט אחד, נוכל לבדוק אם '$#' המשתנה גדול מאפס. הנה קוד לדוגמה כדי לבדוק אם קיים לפחות ארגומנט קלט אחד באמצעות ה- '$#' מִשְׁתַנֶה:
#!/bin/bash
אם [ $# -eq 0 ]
לאחר מכן
הֵד 'חסר ארגומנט קלט.'
יְצִיאָה 1
לִהיוֹת
הֵד 'קיים ארגומנט קלט.'
הנה ה '-eq' המפעיל משמש כדי לבדוק אם ה '$#' משתנה שווה לאפס או לא ואם המשתנה '$#' שווה לאפס, הסקריפט יציג הודעת שגיאה ויצא עם קוד סטטוס של 1. אחרת, הסקריפט ימשיך לפעול, להלן סיפקתי וקלטתי ארגומנט עבור הקוד כך שהוא מציג את ההודעה על קיום קלט של ארגומנט:
שיטה 3: שימוש באפשרות '-n'.
ה '-n' אפשרות משמשת כדי לבדוק אם משתנה אינו ריק. אנו יכולים להשתמש באפשרות זו כדי לבדוק אם ארגומנט הקלט קיים או לא. להלן נתתי קוד לדוגמה שבודק אם קיים ארגומנט קלט באמצעות ה- '-n' אוֹפְּצִיָה:
#!/bin/bashאם [ -נ '$1' ]
לאחר מכן
הֵד 'קיים ארגומנט קלט.'
אַחֵר
הֵד 'חסר ארגומנט קלט.'
יְצִיאָה 1
לִהיוֹת
הנה ה '-n' האפשרות משמשת כדי לבדוק אם ארגומנט הקלט אינו ריק ואם ארגומנט הקלט אינו ריק, הסקריפט יציג הודעת הצלחה. אחרת, הסקריפט יציג הודעת שגיאה ויצא עם קוד סטטוס של 1, למטה סיפקתי וקלטתי ארגומנט עבור הקוד כך שהוא יציג את ההודעה על קיומו של קלט של ארגומנט:
סיכום
בסקריפט של מעטפת, בדיקת קיומם של ארגומנטים של קלט היא שלב חיוני כדי להבטיח שהסקריפט פועל כמצופה. אנו יכולים להשתמש בטכניקות שונות כדי לבדוק את קיומם של ארגומנטים קלט, כגון שימוש בפקודה 'test', המשתנה '$#' או האפשרות '-n'. על ידי יישום טכניקות אלה, אנו יוצרים סקריפטים מעטפת חזקים ואמינים יותר שיכולים להתמודד עם ארגומנטים של קלט.