כיצד לבדוק שהמשתנה מוגדר או ריק ב- bash

How Check Variable Is Set



משתנה יכול להיות מוגדר או לא מוגדר. כאשר משתנה כלשהו אינו מוכרז או מוכרז אך לא מוקצה ערך אז המשתנה אינו מוגדר או אינו מוגדר. כאשר משתנה כלשהו מוכרז ומוקצה לו ערך אז המשתנה מוגדר. פעמים רבות זה דורש לדעת שהמשתנה המסוים מוגדר או לא למטרות תכנות. אחת המטרות החשובות של בדיקת המשתנה מוגדרת או לא היא אימות נתונים. ל- Bash אין פונקציה מובנית כמו שפות תכנות סטנדרטיות אחרות כדי לבדוק אם משתנה מוגדר או לא. אבל לבש יש תכונה לביצוע משימה זו. כיצד תוכל לבדוק שהמשתנה מוגדר או לא ב- bash מוצג במדריך זה.

תחביר:







[[ -vמִשְׁתַנֶה]]אוֹ[[ -עםמִשְׁתַנֶה]]

האפשרות '-v' או '-z' משמשת לבדיקת המשתנה שהוגדר או אינו מוגדר. הביטוי הבולאני לעיל יחזיר נכון אם המשתנה מוגדר ומחזיר שקר אם המשתנה אינו מוגדר או ריק.



$ {משתנה+מחרוזת}

תחליף פרמטר הוא דרך נוספת לבדוק האם המשתנה מוגדר או אינו מוגדר. אם המשתנה מוגדר, אז ערך המחרוזת יחזור אחרת null יחזור.



דוגמה 1: בדוק שהמשתנה מוגדר או מבוטל באמצעות האפשרות '-z'

צור קובץ bash בשם check_var1.sh עם התסריט הבא. כאן, הראשון ` אם` המצב יחזור נכון ו משתנה מספר אינו מוגדר תדפיס. בהצהרה הבאה, 20 מוקצה למשתנה, $ מספר . התנאי השני אם אם יחזיר שווא ו- מספר מוגדר והערך של Num = 20 תדפיס.





check_var1.sh

#!/bin/bash
#בדוק שהמשתנה מוגדר או לא
אם [ -עם $ {Num} ];לאחר מכן
זרק משתנה 'מספר' אינו מוגדר '
אַחֵר
זרק משתנה 'מספר' מוגדר '
לִהיוֹת
#הקצה ערך
על אחד=עשרים
#בדוק שהמשתנה מוגדר או לא לאחר הקצאת הערך
אם [ -עם $ {Num} ];לאחר מכן
זרק משתנה '' Num 'אינו מוגדר'
אַחֵר
זרק '' מספר מוגדר והערך של Num =$ מספר'
לִהיוֹת

הפעל את התסריט.



$לַחֲבוֹטcheckvar1.sh

דוגמה 2: בדוק שהמשתנה מוגדר או מבוטל באמצעות תחליף פרמטר

צור קובץ bash בשם check_var2.sh והוסף את הסקריפט הבא. כאן, ערך מחרוזת מוקצה למשתנה, $ str לפני בדיקת המשתנה מוגדר או אינו מוגדר. מצב 'אם' יחזור נכון והמסר, משתנה 'str' מוגדר והערך הוא שלום תדפיס.

check_var2.sh

#!/bin/bash
#הגדר את המשתנה
עמ= שלום
#הקצה את הערך World לבדיקה אם משתנה str מוגדר
בדיקה=$ {str+World}
#בדוק שהמשתנה מוגדר או אינו מוגדר
אם [ $ checkval -משווהעוֹלָם];לאחר מכן
זרק משתנה '' str 'מוגדר והערך הוא$ str'
אַחֵר
זרק משתנה 'str' אינו מוגדר '
לִהיוֹת

הפעל את התסריט.

$לַחֲבוֹטcheckvar2.sh

דוגמה 3: בדוק שהמשתנה ריק או לא

צור קובץ bash בשם check_var3.sh והוסף את הסקריפט הבא. התסריט יאחסן את הארגומנט הראשון של שורת הפקודה במשתנה, $ argv זה נבדק בהצהרה הבאה. הפלט יהיה הטיעון הראשון ריק אם לא מועבר ארגומנט אחרת הערך של הארגומנט הראשון יודפס.

check_var3.sh

#!/bin/sh
#קרא את ערך הארגומנט הראשון של שורת הפקודה
argv='$ 1'
#בדוק אם ערך הארגומנט הראשון מסופק או לא
[ -v '$ argv' ] && זרק 'הטענה הראשונה ריקה' ||
זרק ״ערכו של הטיעון הראשון הוא$ argv'

הפעל את התסריט ללא כל ויכוח.

$לַחֲבוֹטcheckvar3.sh

הפעל את הסקריפט עם ארגומנט.

$לַחֲבוֹטcheckvar3.shמִבְחָן

סיכום

דרכים שונות לבדוק את המשתנה מוגדר או אינו מוגדר או ריק מוצגות במדריך זה באמצעות דוגמאות שונות. מקווה, הדרכה זו תעזור למשתמשים ללמוד את דרכי הבדיקה של כל משתנה bash.