logo

משתני Bash

משתנים הם החלק החיוני בתכנות, או שאנו יכולים לומר שהם הרוח של שפת תכנות. משתנים מציינים את מיקום הזיכרון באמצעות תווים, מספרים ואלפאנומריים. רגילים להתייחס אליהם ולעשות עליהם מניפולציות בתוכנת מחשב.

מהם המשתנים?

משתנים הם המכלים המאחסנים נתונים או פיסת מידע שימושית כערך בתוכם. להלן התחביר של משתנה:

 Variable_name =value 

משתנה הוא צורה משולבת של שתי מילים, כלומר, vary + able, כלומר ניתן לשנות את ערכו, וניתן להשתמש בו מספר פעמים.

c code abs

משתנה ידוע בתור האחסון הזמני של כל סוג של נתונים כמו מספר שלם, צף, char וכו'. שם משתנה יכול לכלול אלפבית, ספרות וקו תחתון , וניתן להתחיל את שמו באותיות ובקו תחתון בלבד.

הערה: לא נוכל להגדיר שם משתנה שמתחיל באף ספרה.

מהם משתני Bash?

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

בהתחלה, דע את התחביר.

תחביר:

 Variable_name=value 

כללים שנקבעו להגדרת משתני Bash:

  1. הקידומת של שם המשתנה בסימן דולר ($) בזמן קריאה או הדפסה של משתנה.
  2. השאר את סימן הדולר ($) תוך הגדרת משתנה עם ערך כלשהו.
  3. שם משתנה עשוי להיות אלפאנומרי, או שהוא עשוי להיכתב עם קו תחתון (_).
  4. שם משתנה הוא תלוי רישיות: x ו-X נחשבים כשני משתנים שונים.
  5. ניתן לכתוב את שם המשתנה באותיות UPPER_CASE או LOWER_CASE או תערובת של שניהם כרצונך.
  6. ניתן למקם משתנה בכל מקום בסקריפט של Bash או בשורת הפקודה, מכיוון שבזמן ריצה, Bash יחליף אותו בערך שהוקצה לו. זה התאפשר בגלל ביצוע החלפה לפני הפעלת הפקודה.
  7. לא אמור להיות רווח לבן משני הצדדים של סימן השוויון (=) בין שם המשתנה לערך שלו. להלן כמה דוגמאות של משתנים לא חוקיים עם רווחים לבנים (מסומנים בנקודות ...) ביניהם כפי שמופיע להלן:
    var1=...משתנה1
    var2...=משתנה2
    var3...=...משתנה3
  8. אין צורך להשתמש במירכאות כלשהן, לא בודדות או כפולות, כדי להגדיר משתנה עם ערך תו בודד כגון var1=משתנה . כדי להזין מילים מרובות או מחרוזת כפריט בודד במשתנה, השתמש במרכאות כדי להקיף את התוכן שלך במשתנה זה.
    • ציטוט בודד ('') עוזר לטפל בכל דמות.
    • ציטוט כפול ('') עוזר לבצע את ההחלפה.

סוגי מידע

בשפות התכנות הרשמיות, עליך להגדיר את סוג הנתונים של כל משתנה בזמן הצהרת המשתנה. לדוגמה:

 int year=2012 char comp_name='jtp' 

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

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

 year=2012 comp_name=jtp 

באמצעות פקודת echo, קרא אותם על ידי הקצאת סימן $ לפני שמם כגון

echo $year
echo $name

סוגי משתני Bash

ישנם שני סוגים של משתנים במעטפת או בכל מערכת UNIX.

  1. משתנים מוגדרי מערכת
  2. משתנים בהגדרת משתמש

1. משתנים בהגדרת מערכת: אלו הם המשתנים המוגדרים מראש כפי שהם נוצרים ומתוחזקים על ידי מערכת ההפעלה LINUX עצמה. המוסכמה הסטנדרטית שלהם היא שבדרך כלל הם מוגדרים באותיות גדולות, כלומר, UPPER_CASE. אז בכל פעם שאתה רואה משתנה מוגדר באותיות גדולות, סביר להניח שהם המשתנים המוגדרים על ידי המערכת.

אלו הם המשתנים הבאים המוגדרים במערכת כפי שמופיעים להלן:

1. BASH מייצג את שם המעטפת.

דוגמא:

 BASH=/usr/bin/bash 

2. BASH_VERSION מציין את גרסת המעטפת שבה מחזיק Bash.

דוגמא:

 BASH_VERSION=4.2.46(2) 

3. עמודות ציין את המס'. של עמודות למסך שלנו.

דוגמא:

 COLUMNS=80 

4. בית מציין את ספריית הבית עבור המשתמש.

דוגמא:

 HOME=/home/jatpoint 

5. LOGNAME מציין את שם המשתמש ביומן.

דוגמא:

 LOGNAME=javatpoint 

6. OSTYPE אומר את סוג מערכת ההפעלה.

דוגמא:

 OSTYPE=linux-gnu 

7. PWD מייצג את ספריית העבודה הנוכחית.

דוגמא:

 PWD=/home/javatpoint 

8. שם משתמש מציין את השם של המשתמש המחובר כעת.

דוגמא:

 USERNAME=javatpoint 

כדי לדעת את רשימת המשתנים הללו במערכת שלך, הקלד את הפקודות הגדר, env , ו printenv במסוף שורת הפקודה באופן הבא:

1. הקלדת ה מַעֲרֶכֶת פקודה.

תְפוּקָה:

משתני Bash

2. הקלדת ה env פקודה

תְפוּקָה:

משתני Bash

3. הקלדת הפקודה printenv

תְפוּקָה:

משתני Bash

בואו נקרא למשתנים האלה דרך Bash Shell. להלן השלבים שניתנו:

שלב 1: צור סקריפט בשם Bash_sdvar והקלד את הקוד הבא ב-Bash Console באופן הבא:

 #! /bin/bash # Bash System-defined Variables echo $HOME # Home Directory echo $PWD # current working directory echo $BASH # Bash shell name echo $BASH_VERSION # Bash shell Version echo $LOGNAME # Name of the Login User echo $OSTYPE # Type of OS 

שלב 2. תסתכל על קונסולת Bash המופיעה להלן:

משתני Bash

שלב 3. שמור והפעל את הסקריפט. זה יציג את הפלט כפי שניתן לראות באיור המופיע למטה.

תְפוּקָה:

משתני Bash

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

בואו ניצור Bash Script כדי להגדיר את המשתנים הללו. בצע את השלבים המפורטים להלן:

שלב 1. צור סקריפט בשם על ידי bash_yard והקלד את הקוד הבא ב-Bash Console:

 #! /bin/bash # User-Defined Variables name=Peter ROLL_NO=5245325 echo 'The student name is $name and his Roll number is $ROLL_NO.' 

שלב 2. ראה את הקוד ב-Bash Console.

משתני Bash

שלב 3. שמור והפעל את הסקריפט.

תְפוּקָה:

משתני Bash

עבודה של משתני Bash

לאחר הדגמה בסיסית של משתנים, בואו נעבור לדעת איך הם עובדים?

ישנן שתי פעולות שאנו מבצעים בדרך כלל עבור משתנה ב-Bash כפי שניתן להלן:

  • הגדרת ערך עבור משתנה
  • קריאת הערך בשביל זה.

ניתן להגדיר ערך משתנה בדרכים שונות בהן הדרך הנפוצה ביותר היא להגדיר את הערך ישירות. כדי לקרוא משתנה, נוכל למקם את שמו (קדימה עם סימן $) בכל מקום בסקריפט.

Bash בודק תחילה את כל שמות המשתנים כאילו הם קיימים בסקריפט. ואז זה מפרש כל שורה בתסריט שלנו. לאחר זיהוי כל משתנה, הוא מחליף את שם המשתנה בערך שהוקצה לו. אחרי הכל, הוא מפרש/מריץ את שורת הקוד הזו וממשיך בתהליך זה עבור כל שורה מקודדת בסקריפט שלנו.

הערה: שני סוגי המשתנים ב-Bash (שדנו עליהם) עובדים על הטרמינל וגם על סקריפט Bash. בואו לראות את העבודה שלהם על טרמינל ובאש באמצעות דוגמה פשוטה:

דוגמא: קרא שם משתמש לפי XYZ, המיקום שלו בו הוא עובד כעת, והגרסה של Bash Shell שבה הוא משתמש עבור Bash Scripting.

1. עבודה על הטרמינל

משתני Bash

2. עבודה על Bash Shell

ראה את התסריט בשם Bash_Var שניתן להלן:

משתני Bash

ב-3מחקר ופיתוחשורה של התסריט , הכרזנו על משתנה שם משתמש לאחסון שם המשתמש XYZ כערך שלו.

בשתי השורות האחרונות , הדפסנו את ההודעה המיועדת באמצעות ה- הֵד פקודה.

ישנם שני משתנים ופקודה אחת בהודעה זו. לפני כל אחד מהם סימן הדולר ($) שבו:

    שם משתמשהוא משתנה המוגדר על ידי המשתמש לקריאה בשם המשתמש,BASH_VERSIONהוא משתנה מוגדר מערכתית, אשר מעטפת מכנה את עצמה. הוא משמש להדפסת הגרסה של Bash Shell,PWDהפקודה משמשת להדפסת המיקום הנוכחי של המשתמש.

להבנה טובה יותר, צור סקריפט זה על ידי ביצוע הקוד הנתון:

 #! /bin/bash #Bash Variables USER_NAME=XYZ echo Hey there! $USER_NAME is any user currently working on the directory $PWD with Bash Shell Version $BASH_VERSION. 

זה יציג את הפלט כפי שאתה יכול לראות בתמונה הבאה:

תְפוּקָה:

משתני Bash

יש עוד כמה דוגמאות לתרגול משתנים גם בטרמינל וגם ב-Bash Shell. על ידי מעקב אחר ה סט כללים (שנדונו קודם) יש תרגול על משתנים כדלקמן:

א. שימוש במסוף שורת הפקודה

1. הגדרת המשתנים

משתני Bash

2. קריאה והתייחסות למשתנים

משתני Bash

3. משתנים לא חוקיים

משתני Bash

4. שילוב שני משתני מחרוזת

משתני Bash

5. שרשור מחרוזות עם משתנים

משתני Bash

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

משתני Bash

ב. שימוש בסקריפט Bash:

זה דוגמה ל שילוב של משתני ה-String.

משתני Bash

תְפוּקָה:

משתני Bash

טיעונים של שורת הפקודה

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

 ./script_name arg1 arg2 arg3..... 

לא צריך להיות רווח בין שם הסקריפט לכל הארגומנטים החולפים.

כיצד להשתמש בארגומנטים של שורת הפקודה?

ב-Bash Shell, הם משמשים בהתייחסות לפרמטרי ברירת המחדל הבאים או למשתנים המיוחדים.

    משתנים הם החלק החיוני בתכנות, או שאנו יכולים לומר שהם הרוח של שפת תכנות. משתנים מציינים את מיקום הזיכרון באמצעות תווים, מספרים ואלפאנומריים. רגילים להתייחס אליהם ולעשות עליהם מניפולציות בתוכנת מחשב.

    מהם המשתנים?

    משתנים הם המכלים המאחסנים נתונים או פיסת מידע שימושית כערך בתוכם. להלן התחביר של משתנה:

     Variable_name =value 

    משתנה הוא צורה משולבת של שתי מילים, כלומר, vary + able, כלומר ניתן לשנות את ערכו, וניתן להשתמש בו מספר פעמים.

    משתנה ידוע בתור האחסון הזמני של כל סוג של נתונים כמו מספר שלם, צף, char וכו'. שם משתנה יכול לכלול אלפבית, ספרות וקו תחתון , וניתן להתחיל את שמו באותיות ובקו תחתון בלבד.

    הערה: לא נוכל להגדיר שם משתנה שמתחיל באף ספרה.

    מהם משתני Bash?

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

    בהתחלה, דע את התחביר.

    תחביר:

     Variable_name=value 

    כללים שנקבעו להגדרת משתני Bash:

    1. הקידומת של שם המשתנה בסימן דולר ($) בזמן קריאה או הדפסה של משתנה.
    2. השאר את סימן הדולר ($) תוך הגדרת משתנה עם ערך כלשהו.
    3. שם משתנה עשוי להיות אלפאנומרי, או שהוא עשוי להיכתב עם קו תחתון (_).
    4. שם משתנה הוא תלוי רישיות: x ו-X נחשבים כשני משתנים שונים.
    5. ניתן לכתוב את שם המשתנה באותיות UPPER_CASE או LOWER_CASE או תערובת של שניהם כרצונך.
    6. ניתן למקם משתנה בכל מקום בסקריפט של Bash או בשורת הפקודה, מכיוון שבזמן ריצה, Bash יחליף אותו בערך שהוקצה לו. זה התאפשר בגלל ביצוע החלפה לפני הפעלת הפקודה.
    7. לא אמור להיות רווח לבן משני הצדדים של סימן השוויון (=) בין שם המשתנה לערך שלו. להלן כמה דוגמאות של משתנים לא חוקיים עם רווחים לבנים (מסומנים בנקודות ...) ביניהם כפי שמופיע להלן:
      var1=...משתנה1
      var2...=משתנה2
      var3...=...משתנה3
    8. אין צורך להשתמש במירכאות כלשהן, לא בודדות או כפולות, כדי להגדיר משתנה עם ערך תו בודד כגון var1=משתנה . כדי להזין מילים מרובות או מחרוזת כפריט בודד במשתנה, השתמש במרכאות כדי להקיף את התוכן שלך במשתנה זה.
      • ציטוט בודד ('') עוזר לטפל בכל דמות.
      • ציטוט כפול ('') עוזר לבצע את ההחלפה.

    סוגי מידע

    בשפות התכנות הרשמיות, עליך להגדיר את סוג הנתונים של כל משתנה בזמן הצהרת המשתנה. לדוגמה:

     int year=2012 char comp_name='jtp' 

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

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

     year=2012 comp_name=jtp 

    באמצעות פקודת echo, קרא אותם על ידי הקצאת סימן $ לפני שמם כגון

    echo $year
    echo $name

    סוגי משתני Bash

    ישנם שני סוגים של משתנים במעטפת או בכל מערכת UNIX.

    1. משתנים מוגדרי מערכת
    2. משתנים בהגדרת משתמש

    1. משתנים בהגדרת מערכת: אלו הם המשתנים המוגדרים מראש כפי שהם נוצרים ומתוחזקים על ידי מערכת ההפעלה LINUX עצמה. המוסכמה הסטנדרטית שלהם היא שבדרך כלל הם מוגדרים באותיות גדולות, כלומר, UPPER_CASE. אז בכל פעם שאתה רואה משתנה מוגדר באותיות גדולות, סביר להניח שהם המשתנים המוגדרים על ידי המערכת.

    אלו הם המשתנים הבאים המוגדרים במערכת כפי שמופיעים להלן:

    1. BASH מייצג את שם המעטפת.

    דוגמא:

     BASH=/usr/bin/bash 

    2. BASH_VERSION מציין את גרסת המעטפת שבה מחזיק Bash.

    דוגמא:

     BASH_VERSION=4.2.46(2) 

    3. עמודות ציין את המס'. של עמודות למסך שלנו.

    דוגמא:

     COLUMNS=80 

    4. בית מציין את ספריית הבית עבור המשתמש.

    דוגמא:

     HOME=/home/jatpoint 

    5. LOGNAME מציין את שם המשתמש ביומן.

    דוגמא:

     LOGNAME=javatpoint 

    6. OSTYPE אומר את סוג מערכת ההפעלה.

    דוגמא:

     OSTYPE=linux-gnu 

    7. PWD מייצג את ספריית העבודה הנוכחית.

    דוגמא:

     PWD=/home/javatpoint 

    8. שם משתמש מציין את השם של המשתמש המחובר כעת.

    דוגמא:

     USERNAME=javatpoint 

    כדי לדעת את רשימת המשתנים הללו במערכת שלך, הקלד את הפקודות הגדר, env , ו printenv במסוף שורת הפקודה באופן הבא:

    1. הקלדת ה מַעֲרֶכֶת פקודה.

    תְפוּקָה:

    משתני Bash

    2. הקלדת ה env פקודה

    תְפוּקָה:

    משתני Bash

    3. הקלדת הפקודה printenv

    תְפוּקָה:

    משתני Bash

    בואו נקרא למשתנים האלה דרך Bash Shell. להלן השלבים שניתנו:

    שלב 1: צור סקריפט בשם Bash_sdvar והקלד את הקוד הבא ב-Bash Console באופן הבא:

     #! /bin/bash # Bash System-defined Variables echo $HOME # Home Directory echo $PWD # current working directory echo $BASH # Bash shell name echo $BASH_VERSION # Bash shell Version echo $LOGNAME # Name of the Login User echo $OSTYPE # Type of OS 

    שלב 2. תסתכל על קונסולת Bash המופיעה להלן:

    משתני Bash

    שלב 3. שמור והפעל את הסקריפט. זה יציג את הפלט כפי שניתן לראות באיור המופיע למטה.

    תְפוּקָה:

    משתני Bash

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

    בואו ניצור Bash Script כדי להגדיר את המשתנים הללו. בצע את השלבים המפורטים להלן:

    שלב 1. צור סקריפט בשם על ידי bash_yard והקלד את הקוד הבא ב-Bash Console:

     #! /bin/bash # User-Defined Variables name=Peter ROLL_NO=5245325 echo 'The student name is $name and his Roll number is $ROLL_NO.' 

    שלב 2. ראה את הקוד ב-Bash Console.

    משתני Bash

    שלב 3. שמור והפעל את הסקריפט.

    תְפוּקָה:

    משתני Bash

    עבודה של משתני Bash

    לאחר הדגמה בסיסית של משתנים, בואו נעבור לדעת איך הם עובדים?

    ישנן שתי פעולות שאנו מבצעים בדרך כלל עבור משתנה ב-Bash כפי שניתן להלן:

    • הגדרת ערך עבור משתנה
    • קריאת הערך בשביל זה.

    ניתן להגדיר ערך משתנה בדרכים שונות בהן הדרך הנפוצה ביותר היא להגדיר את הערך ישירות. כדי לקרוא משתנה, נוכל למקם את שמו (קדימה עם סימן $) בכל מקום בסקריפט.

    Bash בודק תחילה את כל שמות המשתנים כאילו הם קיימים בסקריפט. ואז זה מפרש כל שורה בתסריט שלנו. לאחר זיהוי כל משתנה, הוא מחליף את שם המשתנה בערך שהוקצה לו. אחרי הכל, הוא מפרש/מריץ את שורת הקוד הזו וממשיך בתהליך זה עבור כל שורה מקודדת בסקריפט שלנו.

    הערה: שני סוגי המשתנים ב-Bash (שדנו עליהם) עובדים על הטרמינל וגם על סקריפט Bash. בואו לראות את העבודה שלהם על טרמינל ובאש באמצעות דוגמה פשוטה:

    דוגמא: קרא שם משתמש לפי XYZ, המיקום שלו בו הוא עובד כעת, והגרסה של Bash Shell שבה הוא משתמש עבור Bash Scripting.

    1. עבודה על הטרמינל

    משתני Bash

    2. עבודה על Bash Shell

    ראה את התסריט בשם Bash_Var שניתן להלן:

    משתני Bash

    ב-3מחקר ופיתוחשורה של התסריט , הכרזנו על משתנה שם משתמש לאחסון שם המשתמש XYZ כערך שלו.

    בשתי השורות האחרונות , הדפסנו את ההודעה המיועדת באמצעות ה- הֵד פקודה.

    ישנם שני משתנים ופקודה אחת בהודעה זו. לפני כל אחד מהם סימן הדולר ($) שבו:

      שם משתמשהוא משתנה המוגדר על ידי המשתמש לקריאה בשם המשתמש,BASH_VERSIONהוא משתנה מוגדר מערכתית, אשר מעטפת מכנה את עצמה. הוא משמש להדפסת הגרסה של Bash Shell,PWDהפקודה משמשת להדפסת המיקום הנוכחי של המשתמש.

    להבנה טובה יותר, צור סקריפט זה על ידי ביצוע הקוד הנתון:

     #! /bin/bash #Bash Variables USER_NAME=XYZ echo Hey there! $USER_NAME is any user currently working on the directory $PWD with Bash Shell Version $BASH_VERSION. 

    זה יציג את הפלט כפי שאתה יכול לראות בתמונה הבאה:

    תְפוּקָה:

    משתני Bash

    יש עוד כמה דוגמאות לתרגול משתנים גם בטרמינל וגם ב-Bash Shell. על ידי מעקב אחר ה סט כללים (שנדונו קודם) יש תרגול על משתנים כדלקמן:

    א. שימוש במסוף שורת הפקודה

    1. הגדרת המשתנים

    משתני Bash

    2. קריאה והתייחסות למשתנים

    משתני Bash

    3. משתנים לא חוקיים

    משתני Bash

    4. שילוב שני משתני מחרוזת

    משתני Bash

    5. שרשור מחרוזות עם משתנים

    משתני Bash

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

    משתני Bash

    ב. שימוש בסקריפט Bash:

    זה דוגמה ל שילוב של משתני ה-String.

    משתני Bash

    תְפוּקָה:

    משתני Bash

    טיעונים של שורת הפקודה

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

     ./script_name arg1 arg2 arg3..... 

    לא צריך להיות רווח בין שם הסקריפט לכל הארגומנטים החולפים.

    כיצד להשתמש בארגומנטים של שורת הפקודה?

    ב-Bash Shell, הם משמשים בהתייחסות לפרמטרי ברירת המחדל הבאים או למשתנים המיוחדים.

      $0מציין את שם הסקריפט שיש להפעיל.$1-$9מאחסן את השמות של 9 הארגומנטים הראשונים או יכול לשמש כעמדות הארגומנטים.$#מציין את המספר הכולל (ספירה) של ארגומנטים המועברים לסקריפט.$*מאחסן את כל הארגומנטים של שורת הפקודה על ידי צירופם יחד.$@מאחסן את רשימת הארגומנטים כמערך.$?מציין את מזהה התהליך של הסקריפט הנוכחי.$$מציין את מצב היציאה של הפקודה האחרונה או תהליך הביצוע האחרון.$!מציג מזהה של עבודת הרקע האחרונה.

    להלן שתי השיטות בהן אנו משתמשים להעברת ארגומנטים של שורת הפקודה:

    שיטה 1: שימוש במספר מיקום

    זוהי הדרך הראשונה לגשת לארגומנטים באמצעות פרמטרי ברירת המחדל ($1...$9). התמונה למטה מסבירה את זה:

    משתני Bash

    תְפוּקָה:

    משתני Bash

    שיטה 2: שימוש ב-Array.

    זוהי הדרך השנייה להעביר את הטיעונים כמערך. פעל לפי האלגוריתם הנתון כדי ליישם שיטה זו.

    שלב 1: צור סקריפט Bash.

    שלב 2: הכריז על שם משתנה כלשהו והקצה את ערכו כ $a בצורה הבאה:

     variable_name=('$@') 

    איפה $@ הוא ארגומנט ברירת המחדל המשמש לאחסון הארגומנטים (אנחנו מעבירים) כמערך.

    שלב 3: הצג את הארגומנטים על ידי הגדרת אינדקס המערך שלהם בצורה הבאה:

     ${variable_name[i]} 

    שלב 4: שמור וסגור את הסקריפט.

    שלב 5: בצע את הסקריפט על ידי העברת הארגומנטים.

    ראה את התוכנית הבאה:

    תכנית:

     #!/bin/bash args=('$@') echo ${args[0]} ${args[1]} ${args[2]} ${args[3]} 

    בקונסולת Bash:

    משתני Bash

    תְפוּקָה:

    משתני Bash

    החלפת פקודה

    על פי התיעוד הרשמי של Bash

    'החלפת פקודה מאפשרת לפלט של פקודה להחליף את הפקודה עצמה. Bash מבצע את ההרחבה על ידי ביצוע הפקודה בסביבת subshell והחלפת החלפת הפקודה בפלט הסטנדרטי של הפקודה, כאשר כל שורות חדשות נמחקות. שורות חדשות מוטבעות אינן נמחקות, אך ייתכן שהן יוסרו במהלך פיצול מילים.'

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

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

    ראה את התחביר לשימוש:

    תחביר

    הצורה הקלאסית של החלפת פקודות במשתנה או החלפת פקודות היא שימוש במירכאות אחורה (`...`), כפי שניתן להלן:

     variable_name=`command_name` variable_name=`command_name [option...] argument1 argument2...` variable_name=`/path/to/command` 

    כעת, אנו מבצעים החלפת פקודות על ידי הוספת הפקודות בסוגריים (שלפניהן סימן הדולר ($)). תסתכל:

     variable_name=$(command_name) variable_name=$(command_name [option...] argument1 argument2...) variable_name=$(path/to/command) 

    אז בואו נעשה החלפת פקודות עם דוגמה לפי הדיון.

    בדוגמה זו, אנו מחליפים פקודה יחידה ls במשתנה. ראה את הטרמינל.

    משתני Bash

    שורה 1: ללא החלפת פקודות, הפלט מורחב במספר שורות.

    שורה 2 ו-3: עם החלפת פקודות, הפלט מסתיים בשורה אחת (חסוך מקום על ידי הסרת שורות נגררות לאחרונה).

    להלן תסריט Bash לבדיקת החלפת הפקודה.

    תכנית:

     #! /bin/bash # command substitution lsResult=$(ls) echo 'My files are:' $lsResult 

    ראה את קונסולת Bash:

    משתני Bash

    תְפוּקָה:

    משתני Bash
    מציין את שם הסקריפט שיש להפעיל.-מאחסן את השמות של 9 הארגומנטים הראשונים או יכול לשמש כעמדות הארגומנטים.$#מציין את המספר הכולל (ספירה) של ארגומנטים המועברים לסקריפט.$*מאחסן את כל הארגומנטים של שורת הפקודה על ידי צירופם יחד.$@מאחסן את רשימת הארגומנטים כמערך.$?מציין את מזהה התהליך של הסקריפט הנוכחי.$$מציין את מצב היציאה של הפקודה האחרונה או תהליך הביצוע האחרון.$!מציג מזהה של עבודת הרקע האחרונה.

להלן שתי השיטות בהן אנו משתמשים להעברת ארגומנטים של שורת הפקודה:

שיטה 1: שימוש במספר מיקום

זוהי הדרך הראשונה לגשת לארגומנטים באמצעות פרמטרי ברירת המחדל (...). התמונה למטה מסבירה את זה:

משתני Bash

תְפוּקָה:

משתני Bash

שיטה 2: שימוש ב-Array.

זוהי הדרך השנייה להעביר את הטיעונים כמערך. פעל לפי האלגוריתם הנתון כדי ליישם שיטה זו.

שלב 1: צור סקריפט Bash.

שלב 2: הכריז על שם משתנה כלשהו והקצה את ערכו כ $a בצורה הבאה:

 variable_name=('$@') 

איפה $@ הוא ארגומנט ברירת המחדל המשמש לאחסון הארגומנטים (אנחנו מעבירים) כמערך.

שלב 3: הצג את הארגומנטים על ידי הגדרת אינדקס המערך שלהם בצורה הבאה:

 ${variable_name[i]} 

שלב 4: שמור וסגור את הסקריפט.

שלב 5: בצע את הסקריפט על ידי העברת הארגומנטים.

ראה את התוכנית הבאה:

תכנית:

 #!/bin/bash args=('$@') echo ${args[0]} ${args[1]} ${args[2]} ${args[3]} 

בקונסולת Bash:

משתני Bash

תְפוּקָה:

משתני Bash

החלפת פקודה

על פי התיעוד הרשמי של Bash

'החלפת פקודה מאפשרת לפלט של פקודה להחליף את הפקודה עצמה. Bash מבצע את ההרחבה על ידי ביצוע הפקודה בסביבת subshell והחלפת החלפת הפקודה בפלט הסטנדרטי של הפקודה, כאשר כל שורות חדשות נמחקות. שורות חדשות מוטבעות אינן נמחקות, אך ייתכן שהן יוסרו במהלך פיצול מילים.'

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

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

ראה את התחביר לשימוש:

תחביר

הצורה הקלאסית של החלפת פקודות במשתנה או החלפת פקודות היא שימוש במירכאות אחורה (`...`), כפי שניתן להלן:

 variable_name=`command_name` variable_name=`command_name [option...] argument1 argument2...` variable_name=`/path/to/command` 

כעת, אנו מבצעים החלפת פקודות על ידי הוספת הפקודות בסוגריים (שלפניהן סימן הדולר ($)). תסתכל:

 variable_name=$(command_name) variable_name=$(command_name [option...] argument1 argument2...) variable_name=$(path/to/command) 

אז בואו נעשה החלפת פקודות עם דוגמה לפי הדיון.

בדוגמה זו, אנו מחליפים פקודה יחידה ls במשתנה. ראה את הטרמינל.

משתני Bash

שורה 1: ללא החלפת פקודות, הפלט מורחב במספר שורות.

שורה 2 ו-3: עם החלפת פקודות, הפלט מסתיים בשורה אחת (חסוך מקום על ידי הסרת שורות נגררות לאחרונה).

להלן תסריט Bash לבדיקת החלפת הפקודה.

תכנית:

 #! /bin/bash # command substitution lsResult=$(ls) echo 'My files are:' $lsResult 

ראה את קונסולת Bash:

משתני Bash

תְפוּקָה:

משתני Bash