בשפות תכנות, לולאות הם רכיבים חיוניים ומשמשים כאשר רוצים לחזור על קוד שוב ושוב עד לתנאי שצוין.
ב לַחֲבוֹט סקריפטים, לולאות ממלאים כמעט את אותו תפקיד והם רגילים אוטומציה של משימות שחוזרות על עצמן בדיוק כמו בשפות תכנות.
ב לַחֲבוֹט סקריפטים, ישנם 3 סוגים של לולאות: עבור לולאה, בעוד לולאה, ו עד לולאה. השלושה משמשים לחזרה על רשימת ערכים ולבצע קבוצה נתונה של פקודות.
במדריך זה נתמקד ב Bash For Loop בלינוקס.
כפי שהוזכר קודם לכן, ה עבור לולאה חוזר על טווח של ערכים ומבצע קבוצה של פקודות.
עבור לולאה לוקח את התחביר הבא:
עבור שם_משתנה ב-value1 value2 value3.. נ. עשה פקודה1 פקודה2 פקודה. בוצע.
הבה נבדוק כעת כמה שימושים לדוגמה של bash for loop.
בצורתו הפשוטה, ה עבור לולאה לוקח את הפורמט הבסיסי הבא. בדוגמה זו, המשתנה נ
חוזר על קבוצה של ערכים מספריים המוקפים בסוגריים מסולסלים ומדפיס את הערכים שלהם ל-stdout.
עבור n ב {1 2 3 4 5 6 7}; לעשות הד $n. בוצע.
בדוגמאות הקודמות, פירטנו במפורש את הערכים שיש לחזור על ה- עבור לולאה, מה שעובד בסדר גמור. עם זאת, אתה יכול רק לדמיין כמה משימה מסורבלת וגוזלת זמן תהיה אם תחזרי על, למשל, מאה ערכים. זה יחייב אותך להקליד את כל הערכים מ-1 עד 100.
כדי לטפל בבעיה זו, ציין טווח. לשם כך, ציין את המספר להתחלה ולעצירה מופרדים בשתי נקודות.
בדוגמה זו, 1 הוא הערך הראשון ואילו 7 הוא הערך האחרון בטווח.
#!/bin/bash עבור n ב-{1..7}; לעשות הד $n. בוצע.
ברגע שסקריפט המעטפת מבוצע, כל הערכים בטווח רשומים, בדומה למה שהיה לנו לולאות פשוטות.
בנוסף, אנו יכולים לכלול ערך בסוף הטווח שעומד לגרום ל- עבור לולאה לחזור על הערכים בשלבים מצטברים.
סקריפט ה-bash הבא מדפיס את הערכים בין 1 ל-7 עם 2 שלבים מצטברים בין הערכים החל מהערך הראשון.
#!/bin/bash עבור n ב-{1..7..2}; לעשות הד $n. בוצע.
מהדוגמה לעיל, אתה יכול לראות כי לוּלָאָה הגדיל את הערכים בתוך הסוגרים המתולתלים ב-2 ערכים.
אתה יכול גם לחזור על ערכים המוגדרים במערך בקלות באמצעות a עבור לופ. בדוגמה הבאה, ה עבור לולאה עובר דרך כל הערכים שבתוך מערך פירות ומדפיס אותם ל-stdout.
#!/bin/bash fruits=("בלוברי" "אפרסק" "מנגו" "אננס" "פאפאיה") עבור n ב-${פירות[@]}; לעשות הד $n. בוצע.
ה @
המפעיל ניגש או מכוון לכל האלמנטים. זה מאפשר לבצע איטרציה על כל האלמנטים אחד אחד.
בנוסף, ניתן לגשת לאלמנט בודד על ידי ציון מיקומו בתוך המערך.
למשל כדי לגשת ל"מנגו" אלמנט, החלף את @
אופרטור עם מיקום האלמנט במערך (האלמנט הראשון מתחיל ב-0, אז במקרה זה, "מנגו” יסומן ב-2).
כך נראית לולאת for.
#!/bin/bash fruits=("בלוברי" "אפרסק" "מנגו" "אננס" "פאפאיה") עבור n ב-${פירות[2]}; לעשות הד $n. בוצע.
אתה יכול להשתמש במשתנים בתוך לולאות כדי לחזור על טווח של אלמנטים. זה איפה בסגנון C עבור לולאות היכנס. הדוגמה הבאה ממחישה את א סגנון C עבור לולאה שמדפיס רשימה של ערכים מספריים מ-1 עד 7.
#!/bin/bash n=7. עבור (( n=1; n<=$n; n++ )); לעשות הד $n. בוצע.
אתה יכול לכלול הצהרות מותנות בפנים בסגנון C עבור לולאות. בדוגמה הבאה, כללנו הצהרת if-else שבודקת ומדפיסה מספרים זוגיים ואי-זוגיים בין 1 ל-7.
#!/bin/bash עבור (( n=1; n<=7; n++ )) do # בדוק אם המספר זוגי או לא אם (( $n%2==0 )) ואז הד "$n הוא זוגי" אחרת הד "$n הוא אי זוגי" בוצע.
ה 'לְהַמשִׁיך' הצהרה היא פקודה מובנית השולטת בהפעלת סקריפט. חוץ מ-bash scripting, הוא משמש גם בשפות תכנות כגון פִּיתוֹן ו-Java.
ה להמשיך בהצהרה עוצר את האיטרציה הנוכחית בתוך a לוּלָאָה כאשר תנאי מסוים מתקיים, ולאחר מכן ממשיך את האיטרציה.
קחו בחשבון את עבור לולאה מוצג להלן.
#!/bin/bash. עבור n ב-{1..10} עשה אם [[ $n -eq '6' ]] אז הדהוד "הגיע ליעד $n" המשך fi echo $n. בוצע.
זה מה שהקוד עושה:
להלן הפלט הצפוי לאחר הפעלת הסקריפט.
ה 'לשבור' הצהרה, כפי שהשם מרמז, עוצרת או מסיימת את האיטרציה כאשר תנאי מתקיים.
קחו בחשבון את עבור לולאה לְהַלָן.
#!/bin/bash. עבור n ב-{1..10} עשה אם [[ $n -eq '6' ]] אז הדהוד "יעד $n הושג" break fi echo $n. בוצע. הד "הכל נעשה"
זה מה שהקוד עושה:
מהפלט, ניתן לראות שהלולאה נעצרת ברגע שהמשתנה עומד בתנאי הלולאה.
זה היה הדרכה על Bash For לולאות. אנו מקווים שמצאת את התובנה הזו. אל תהסס לשקול את המשוב שלך.