מדריך למתחילים כדי BASH - השוואת דברים
בחלק הקודם של המדריך BASH הסתכלנו הצהרות מותנה.
מדריך זה היה ארוך מאוד, אבל באמת רק הראה כיצד לשלוט על זרימת ההיגיון. מדריך זה מציג את הדרכים השונות שבהן ניתן להשוות בין משתנים.
התמונה לעיל מראה את הדוגמה הראשונה במדריך זה של השבוע:
#! / bin / bashname1 = "gary"name2 = "bob"אם "$ name1" = "$ name2"לאחר מכן הד "שמות התאמה"Other הד "השמות אינם תואמים"Fiבתסריט לעיל הגדרתי שני משתנים בשם name1 ו name2 והקצה להם את הערכים "גארי" ו "בוב". כאשר משתנים משתנים בין מרכאות הם נקראים משתנים מחרוזת אשר הופך להיות רלוונטי יותר כמו הדרכה ממשיך. כל התסריט עושה הוא להשוות את הערך של $ name1 ו $ name2 ואם הם להתאים פלט מחרוזת "שמות שמות" ואם הם לא פלט את המחרוזת "השמות אינם תואמים". המרכאות סביב המשתנים $ name1 ו- $ 2 הן חשובות משום שאם הערך של אחת מהן לא נקבע אזי הסקריפט ימשיך לפעול. לדוגמה, אם $ name1 מעולם לא הוגדר אז אתה תהיה משווה "" עם "בוב". ללא המרכאות אתה תישאר עם = "בוב" אשר נכשל בבירור. ניתן גם להשתמש ב! = Nation כדי להגדיר לא שווה ל: בדוגמה לעיל הבדיקה משווה את שתי מחרוזות אותו שואל את השאלה האם גארי לבוא לפני בוב באלפבית? ברור שהתשובה היא לא. הסקריפט מציג את המפעיל פחות (<). כמו מפעיל פחות מ משמש גם עבור ניתוב מחדש אתה צריך לברוח עם קו נטוי () עבור זה אומר פחות מאשר למה את התסריט לעיל השוותי "$ name1" "$ $ name2". ההפך של פחות מ ברור יותר מאשר. במקום להשתמש ב- <use >. לדוגמה אם ברצונך לבדוק אם למשתנה יש ערך תוכל להשתמש במבחן הבא: בסקריפט לעיל בדקתי אם $ name2 כבר נתון ערך ואם זה לא את ההודעה "אין בוב, מעולם לא היה מופיע בוב". בשקופית האחרונה כיסינו אם נקבע או לא. לפעמים, אם כי משתנה יכול להיות מוגדר אבל זה אולי לא ממש יש ערך. לדוגמה: כדי לבדוק אם למשתנה יש ערך או לא (כלומר, יש אורך של אפס) השתמש -z כדלקמן: בתסריט לעיל יש להגדיר $ name1 למחרוזת אורך אפס ולאחר מכן להשוות אותו באמצעות -z. אם $ name1 הוא אפס אורך ההודעה "גארי יש יצא הערב" יוצג. עד כה כל ההשוואות היו עבור מחרוזות. מה לגבי השוואת מספרים? התסריט הנ"ל מציג דוגמה להשוואת שני מספרים: כדי להגדיר משתנה להיות מספר פשוט להגדיר אותו ללא מרכאות. לאחר מכן תוכל להשוות את המספרים עם סימן שווה. אני מעדיף עם זאת להשתמש במפעיל הבא כדי להשוות שני מספרים: אם ברצונך להשוות בין אם מספר הוא פחות ממספר אחר, תוכל להשתמש בפחות מפעילות (<). כמו עם מחרוזות אתה צריך לברוח פחות מפעיל עם קו נטוי. ( <). דרך טובה יותר להשוות מספרים היא להשתמש בסימון הבא: לדוגמה: לבסוף, עבור מדריך זה, אם ברצונכם לבדוק אם שני מספרים שונים זה מזה, תוכלו להשתמש במפעילים הפחות מ-או יותר ביחד (<>) או ב- -ne כדלקמן: אם החמצת את שלושת החלקים הראשונים של מדריך זה, תוכל למצוא אותם על ידי לחיצה על הקישורים הבאים: בחלק הבא של המדריך אני אעבור אריתמטיקה. מדריך למתחילים כדי BASH - השוואת מחרוזות
מדריך למתחילים כדי BASH - השוואת מחרוזות
מדריך למתחילים כדי BASH - השוואת מחרוזות
מדריך למתחילים כדי BASH - השוואת מספרים
מדריך למתחילים כדי BASH - השוואת מספרים
מדריך למתחילים כדי BASH - השוואת מספרים
מדריך למתחילים לבאש - מפעילי השוואה - סיכום