משתנים הם החלק החיוני בתכנות, או שאנו יכולים לומר שהם הרוח של שפת תכנות. משתנים מציינים את מיקום הזיכרון באמצעות תווים, מספרים ואלפאנומריים. רגילים להתייחס אליהם ולעשות עליהם מניפולציות בתוכנת מחשב.
מהם המשתנים?
משתנים הם המכלים המאחסנים נתונים או פיסת מידע שימושית כערך בתוכם. להלן התחביר של משתנה:
Variable_name =value
משתנה הוא צורה משולבת של שתי מילים, כלומר, vary + able, כלומר ניתן לשנות את ערכו, וניתן להשתמש בו מספר פעמים.
c code abs
משתנה ידוע בתור האחסון הזמני של כל סוג של נתונים כמו מספר שלם, צף, char וכו'. שם משתנה יכול לכלול אלפבית, ספרות וקו תחתון , וניתן להתחיל את שמו באותיות ובקו תחתון בלבד.
הערה: לא נוכל להגדיר שם משתנה שמתחיל באף ספרה.
מהם משתני Bash?
אנחנו לא יכולים להשתמש במשתני bash בלי שיש לנו את המידע המתאים ( תחביר, סוגי נתונים, סוגים, עבודה ) על זה, אז בואו נעבור על המדריך הקצר הזה כדי לקבל את הסקירה המתאימה של משתני Bash.
בהתחלה, דע את התחביר.
תחביר:
Variable_name=value
כללים שנקבעו להגדרת משתני Bash:
- הקידומת של שם המשתנה בסימן דולר ($) בזמן קריאה או הדפסה של משתנה.
- השאר את סימן הדולר ($) תוך הגדרת משתנה עם ערך כלשהו.
- שם משתנה עשוי להיות אלפאנומרי, או שהוא עשוי להיכתב עם קו תחתון (_).
- שם משתנה הוא תלוי רישיות: x ו-X נחשבים כשני משתנים שונים.
- ניתן לכתוב את שם המשתנה באותיות UPPER_CASE או LOWER_CASE או תערובת של שניהם כרצונך.
- ניתן למקם משתנה בכל מקום בסקריפט של Bash או בשורת הפקודה, מכיוון שבזמן ריצה, Bash יחליף אותו בערך שהוקצה לו. זה התאפשר בגלל ביצוע החלפה לפני הפעלת הפקודה.
- לא אמור להיות רווח לבן משני הצדדים של סימן השוויון (=) בין שם המשתנה לערך שלו. להלן כמה דוגמאות של משתנים לא חוקיים עם רווחים לבנים (מסומנים בנקודות ...) ביניהם כפי שמופיע להלן:
var1=...משתנה1
var2...=משתנה2
var3...=...משתנה3 - אין צורך להשתמש במירכאות כלשהן, לא בודדות או כפולות, כדי להגדיר משתנה עם ערך תו בודד כגון var1=משתנה . כדי להזין מילים מרובות או מחרוזת כפריט בודד במשתנה, השתמש במרכאות כדי להקיף את התוכן שלך במשתנה זה.
- ציטוט בודד ('') עוזר לטפל בכל דמות.
- ציטוט כפול ('') עוזר לבצע את ההחלפה.
סוגי מידע
בשפות התכנות הרשמיות, עליך להגדיר את סוג הנתונים של כל משתנה בזמן הצהרת המשתנה. לדוגמה:
int year=2012 char comp_name='jtp'
אבל במקרה של Bash, אתה לא צריך להגדיר את סוג הנתונים של משתנה כלשהו בזמן הצהרת המשתנה. משתני Bash הם לא מודפס , כלומר פשוט הקלד את שם המשתנה על ידי הקצאת הערך שלו, והוא ישקול אוטומטית את סוג הנתונים הזה.
כזה שאם אתה מקצה ערך מספרי כלשהו למשתנה, הוא יעבוד כמספר שלם ואם תקצה ערך תו למשתנה, אז זה יהיה String.
year=2012 comp_name=jtp
באמצעות פקודת echo, קרא אותם על ידי הקצאת סימן $ לפני שמם כגון
echo $year
echo $name
סוגי משתני Bash
ישנם שני סוגים של משתנים במעטפת או בכל מערכת UNIX.
- משתנים מוגדרי מערכת
- משתנים בהגדרת משתמש
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. הקלדת ה מַעֲרֶכֶת פקודה.
תְפוּקָה:
2. הקלדת ה env פקודה
תְפוּקָה:
3. הקלדת הפקודה printenv
תְפוּקָה:
בואו נקרא למשתנים האלה דרך 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 המופיעה להלן:
שלב 3. שמור והפעל את הסקריפט. זה יציג את הפלט כפי שניתן לראות באיור המופיע למטה.
תְפוּקָה:
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.
שלב 3. שמור והפעל את הסקריפט.
תְפוּקָה:
עבודה של משתני Bash
לאחר הדגמה בסיסית של משתנים, בואו נעבור לדעת איך הם עובדים?
ישנן שתי פעולות שאנו מבצעים בדרך כלל עבור משתנה ב-Bash כפי שניתן להלן:
- הגדרת ערך עבור משתנה
- קריאת הערך בשביל זה.
ניתן להגדיר ערך משתנה בדרכים שונות בהן הדרך הנפוצה ביותר היא להגדיר את הערך ישירות. כדי לקרוא משתנה, נוכל למקם את שמו (קדימה עם סימן $) בכל מקום בסקריפט.
Bash בודק תחילה את כל שמות המשתנים כאילו הם קיימים בסקריפט. ואז זה מפרש כל שורה בתסריט שלנו. לאחר זיהוי כל משתנה, הוא מחליף את שם המשתנה בערך שהוקצה לו. אחרי הכל, הוא מפרש/מריץ את שורת הקוד הזו וממשיך בתהליך זה עבור כל שורה מקודדת בסקריפט שלנו.
הערה: שני סוגי המשתנים ב-Bash (שדנו עליהם) עובדים על הטרמינל וגם על סקריפט Bash. בואו לראות את העבודה שלהם על טרמינל ובאש באמצעות דוגמה פשוטה:
דוגמא: קרא שם משתמש לפי XYZ, המיקום שלו בו הוא עובד כעת, והגרסה של Bash Shell שבה הוא משתמש עבור Bash Scripting.
1. עבודה על הטרמינל
2. עבודה על Bash Shell
ראה את התסריט בשם Bash_Var שניתן להלן:
ב-3מחקר ופיתוחשורה של התסריט , הכרזנו על משתנה שם משתמש לאחסון שם המשתמש XYZ כערך שלו.
בשתי השורות האחרונות , הדפסנו את ההודעה המיועדת באמצעות ה- הֵד פקודה.
ישנם שני משתנים ופקודה אחת בהודעה זו. לפני כל אחד מהם סימן הדולר ($) שבו:
להבנה טובה יותר, צור סקריפט זה על ידי ביצוע הקוד הנתון:
#! /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 Shell. על ידי מעקב אחר ה סט כללים (שנדונו קודם) יש תרגול על משתנים כדלקמן:
א. שימוש במסוף שורת הפקודה
1. הגדרת המשתנים
2. קריאה והתייחסות למשתנים
3. משתנים לא חוקיים
4. שילוב שני משתני מחרוזת
5. שרשור מחרוזות עם משתנים
הערה: אל תשתמש במירכאות בודדות לשילוב שני משתנים וגם לשרשור של מחרוזות עם משתנים. כך שאם אתה משרשר מחרוזות על ידי הוספתן במרכאות בודדות, יהיה זה כישלון לקרוא אותן כפי שניתן לראות בתמונה המופיעה למטה:
ב. שימוש בסקריפט Bash:
זה דוגמה ל שילוב של משתני ה-String.
תְפוּקָה:
טיעונים של שורת הפקודה
ארגומנטים של שורת הפקודה משמשים כדי להפוך סקריפט לדינמי יותר על ידי העברת קלט לקוד. אנו מעבירים את הארגומנטים הללו בזמן הריצה של הסקריפט כטופס הבא:
./script_name arg1 arg2 arg3.....
לא צריך להיות רווח בין שם הסקריפט לכל הארגומנטים החולפים.
כיצד להשתמש בארגומנטים של שורת הפקודה?
ב-Bash Shell, הם משמשים בהתייחסות לפרמטרי ברירת המחדל הבאים או למשתנים המיוחדים.
- הקידומת של שם המשתנה בסימן דולר ($) בזמן קריאה או הדפסה של משתנה.
- השאר את סימן הדולר ($) תוך הגדרת משתנה עם ערך כלשהו.
- שם משתנה עשוי להיות אלפאנומרי, או שהוא עשוי להיכתב עם קו תחתון (_).
- שם משתנה הוא תלוי רישיות: x ו-X נחשבים כשני משתנים שונים.
- ניתן לכתוב את שם המשתנה באותיות UPPER_CASE או LOWER_CASE או תערובת של שניהם כרצונך.
- ניתן למקם משתנה בכל מקום בסקריפט של Bash או בשורת הפקודה, מכיוון שבזמן ריצה, Bash יחליף אותו בערך שהוקצה לו. זה התאפשר בגלל ביצוע החלפה לפני הפעלת הפקודה.
- לא אמור להיות רווח לבן משני הצדדים של סימן השוויון (=) בין שם המשתנה לערך שלו. להלן כמה דוגמאות של משתנים לא חוקיים עם רווחים לבנים (מסומנים בנקודות ...) ביניהם כפי שמופיע להלן:
var1=...משתנה1
var2...=משתנה2
var3...=...משתנה3 - אין צורך להשתמש במירכאות כלשהן, לא בודדות או כפולות, כדי להגדיר משתנה עם ערך תו בודד כגון var1=משתנה . כדי להזין מילים מרובות או מחרוזת כפריט בודד במשתנה, השתמש במרכאות כדי להקיף את התוכן שלך במשתנה זה.
- ציטוט בודד ('') עוזר לטפל בכל דמות.
- ציטוט כפול ('') עוזר לבצע את ההחלפה.
- משתנים מוגדרי מערכת
- משתנים בהגדרת משתמש
- הגדרת ערך עבור משתנה
- קריאת הערך בשביל זה.
משתנים הם החלק החיוני בתכנות, או שאנו יכולים לומר שהם הרוח של שפת תכנות. משתנים מציינים את מיקום הזיכרון באמצעות תווים, מספרים ואלפאנומריים. רגילים להתייחס אליהם ולעשות עליהם מניפולציות בתוכנת מחשב.
מהם המשתנים?
משתנים הם המכלים המאחסנים נתונים או פיסת מידע שימושית כערך בתוכם. להלן התחביר של משתנה:
Variable_name =value
משתנה הוא צורה משולבת של שתי מילים, כלומר, vary + able, כלומר ניתן לשנות את ערכו, וניתן להשתמש בו מספר פעמים.
משתנה ידוע בתור האחסון הזמני של כל סוג של נתונים כמו מספר שלם, צף, char וכו'. שם משתנה יכול לכלול אלפבית, ספרות וקו תחתון , וניתן להתחיל את שמו באותיות ובקו תחתון בלבד.
הערה: לא נוכל להגדיר שם משתנה שמתחיל באף ספרה.
מהם משתני Bash?
אנחנו לא יכולים להשתמש במשתני bash בלי שיש לנו את המידע המתאים ( תחביר, סוגי נתונים, סוגים, עבודה ) על זה, אז בואו נעבור על המדריך הקצר הזה כדי לקבל את הסקירה המתאימה של משתני Bash.
בהתחלה, דע את התחביר.
תחביר:
Variable_name=value
כללים שנקבעו להגדרת משתני Bash:
סוגי מידע
בשפות התכנות הרשמיות, עליך להגדיר את סוג הנתונים של כל משתנה בזמן הצהרת המשתנה. לדוגמה:
int year=2012 char comp_name='jtp'
אבל במקרה של Bash, אתה לא צריך להגדיר את סוג הנתונים של משתנה כלשהו בזמן הצהרת המשתנה. משתני Bash הם לא מודפס , כלומר פשוט הקלד את שם המשתנה על ידי הקצאת הערך שלו, והוא ישקול אוטומטית את סוג הנתונים הזה.
כזה שאם אתה מקצה ערך מספרי כלשהו למשתנה, הוא יעבוד כמספר שלם ואם תקצה ערך תו למשתנה, אז זה יהיה String.
year=2012 comp_name=jtp
באמצעות פקודת echo, קרא אותם על ידי הקצאת סימן $ לפני שמם כגון
echo $year
echo $name
סוגי משתני Bash
ישנם שני סוגים של משתנים במעטפת או בכל מערכת UNIX.
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. הקלדת ה מַעֲרֶכֶת פקודה.
תְפוּקָה:
2. הקלדת ה env פקודה
תְפוּקָה:
3. הקלדת הפקודה printenv
תְפוּקָה:
בואו נקרא למשתנים האלה דרך 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 המופיעה להלן:
שלב 3. שמור והפעל את הסקריפט. זה יציג את הפלט כפי שניתן לראות באיור המופיע למטה.
תְפוּקָה:
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.
שלב 3. שמור והפעל את הסקריפט.
תְפוּקָה:
עבודה של משתני Bash
לאחר הדגמה בסיסית של משתנים, בואו נעבור לדעת איך הם עובדים?
ישנן שתי פעולות שאנו מבצעים בדרך כלל עבור משתנה ב-Bash כפי שניתן להלן:
ניתן להגדיר ערך משתנה בדרכים שונות בהן הדרך הנפוצה ביותר היא להגדיר את הערך ישירות. כדי לקרוא משתנה, נוכל למקם את שמו (קדימה עם סימן $) בכל מקום בסקריפט.
Bash בודק תחילה את כל שמות המשתנים כאילו הם קיימים בסקריפט. ואז זה מפרש כל שורה בתסריט שלנו. לאחר זיהוי כל משתנה, הוא מחליף את שם המשתנה בערך שהוקצה לו. אחרי הכל, הוא מפרש/מריץ את שורת הקוד הזו וממשיך בתהליך זה עבור כל שורה מקודדת בסקריפט שלנו.
הערה: שני סוגי המשתנים ב-Bash (שדנו עליהם) עובדים על הטרמינל וגם על סקריפט Bash. בואו לראות את העבודה שלהם על טרמינל ובאש באמצעות דוגמה פשוטה:
דוגמא: קרא שם משתמש לפי XYZ, המיקום שלו בו הוא עובד כעת, והגרסה של Bash Shell שבה הוא משתמש עבור Bash Scripting.
1. עבודה על הטרמינל
2. עבודה על Bash Shell
ראה את התסריט בשם Bash_Var שניתן להלן:
ב-3מחקר ופיתוחשורה של התסריט , הכרזנו על משתנה שם משתמש לאחסון שם המשתמש XYZ כערך שלו.
בשתי השורות האחרונות , הדפסנו את ההודעה המיועדת באמצעות ה- הֵד פקודה.
ישנם שני משתנים ופקודה אחת בהודעה זו. לפני כל אחד מהם סימן הדולר ($) שבו:
להבנה טובה יותר, צור סקריפט זה על ידי ביצוע הקוד הנתון:
#! /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 Shell. על ידי מעקב אחר ה סט כללים (שנדונו קודם) יש תרגול על משתנים כדלקמן:
א. שימוש במסוף שורת הפקודה
1. הגדרת המשתנים
2. קריאה והתייחסות למשתנים
3. משתנים לא חוקיים
4. שילוב שני משתני מחרוזת
5. שרשור מחרוזות עם משתנים
הערה: אל תשתמש במירכאות בודדות לשילוב שני משתנים וגם לשרשור של מחרוזות עם משתנים. כך שאם אתה משרשר מחרוזות על ידי הוספתן במרכאות בודדות, יהיה זה כישלון לקרוא אותן כפי שניתן לראות בתמונה המופיעה למטה:
ב. שימוש בסקריפט Bash:
זה דוגמה ל שילוב של משתני ה-String.
תְפוּקָה:
טיעונים של שורת הפקודה
ארגומנטים של שורת הפקודה משמשים כדי להפוך סקריפט לדינמי יותר על ידי העברת קלט לקוד. אנו מעבירים את הארגומנטים הללו בזמן הריצה של הסקריפט כטופס הבא:
./script_name arg1 arg2 arg3.....
לא צריך להיות רווח בין שם הסקריפט לכל הארגומנטים החולפים.
כיצד להשתמש בארגומנטים של שורת הפקודה?
ב-Bash Shell, הם משמשים בהתייחסות לפרמטרי ברירת המחדל הבאים או למשתנים המיוחדים.
להלן שתי השיטות בהן אנו משתמשים להעברת ארגומנטים של שורת הפקודה:
שיטה 1: שימוש במספר מיקום
זוהי הדרך הראשונה לגשת לארגומנטים באמצעות פרמטרי ברירת המחדל ($1...$9). התמונה למטה מסבירה את זה:
תְפוּקָה:
שיטה 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 מבצע את ההרחבה על ידי ביצוע הפקודה בסביבת 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 במשתנה. ראה את הטרמינל.
שורה 1: ללא החלפת פקודות, הפלט מורחב במספר שורות.
שורה 2 ו-3: עם החלפת פקודות, הפלט מסתיים בשורה אחת (חסוך מקום על ידי הסרת שורות נגררות לאחרונה).
להלן תסריט Bash לבדיקת החלפת הפקודה.
תכנית:
#! /bin/bash # command substitution lsResult=$(ls) echo 'My files are:' $lsResult
ראה את קונסולת Bash:
תְפוּקָה:
להלן שתי השיטות בהן אנו משתמשים להעברת ארגומנטים של שורת הפקודה:
שיטה 1: שימוש במספר מיקום
זוהי הדרך הראשונה לגשת לארגומנטים באמצעות פרמטרי ברירת המחדל (...). התמונה למטה מסבירה את זה:
תְפוּקָה:
שיטה 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 מבצע את ההרחבה על ידי ביצוע הפקודה בסביבת 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 במשתנה. ראה את הטרמינל.
שורה 1: ללא החלפת פקודות, הפלט מורחב במספר שורות.
שורה 2 ו-3: עם החלפת פקודות, הפלט מסתיים בשורה אחת (חסוך מקום על ידי הסרת שורות נגררות לאחרונה).
להלן תסריט Bash לבדיקת החלפת הפקודה.
תכנית:
#! /bin/bash # command substitution lsResult=$(ls) echo 'My files are:' $lsResult
ראה את קונסולת Bash:
תְפוּקָה: