OnWorks Linux ו-Windows Online WorkStations

לוגו

אירוח מקוון בחינם עבור תחנות עבודה

<הקודם | תוכן | הבא>

מקרה

In לחבוט, נקראת פקודה מורכבת מרובה בחירה מקרה. יש לו מס סינ-מס הבא:

מקרה מילה in

[דפוס [| דפוס]...) פקודות ;;]...

esac

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



#! / bin / bash

# תפריט קריאה: תוכנית מידע מערכת מבוססת תפריט ברורה

הד "

בבקשה תבחר:


1. הצג מידע מערכת

2. הצג שטח דיסק

3. הצג את ניצול שטח הבית

0. צא"

קרא -p "הזן בחירה [0-3] > "


if [[ $REPLY =~ ^[0-3]$ ]]; אז אם [[ $REPLY == 0 ]]; לאחר מכן

#! / bin / bash

# תפריט קריאה: תוכנית מידע מערכת מבוססת תפריט ברורה

הד "

בבקשה תבחר:


1. הצג מידע מערכת

2. הצג שטח דיסק

3. הצג את ניצול שטח הבית

0. צא"

קרא -p "הזן בחירה [0-3] > "


if [[ $REPLY =~ ^[0-3]$ ]]; אז אם [[ $REPLY == 0 ]]; לאחר מכן


echo "התוכנית הופסקה." יְצִיאָה

fi

if [[ $REPLY == 1 ]]; לאחר מכן, הדהוד זמן פעולה של "שם מארח: $HOSTNAME".

יציאה

fi

if [[ $REPLY == 2 ]]; ואז df -h

יציאה

fi

if [[ $REPLY == 3 ]]; לאחר מכן

if [[ $(id -u) -eq 0 ]]; לאחר מכן

echo "ניצול שטח ביתי (כל המשתמשים)" du -sh /home/*

אחר

echo "ניצול שטח ביתי ($USER)" du -sh $HOME

fi יציאה

פי אחר

echo "ערך לא חוקי." >&2 יציאה 1

fi

echo "התוכנית הופסקה." יְצִיאָה

fi

if [[ $REPLY == 1 ]]; לאחר מכן, הדהוד זמן פעולה של "שם מארח: $HOSTNAME".

יציאה

fi

if [[ $REPLY == 2 ]]; ואז df -h

יציאה

fi

if [[ $REPLY == 3 ]]; לאחר מכן

if [[ $(id -u) -eq 0 ]]; לאחר מכן

echo "ניצול שטח ביתי (כל המשתמשים)" du -sh /home/*

אחר

echo "ניצול שטח ביתי ($USER)" du -sh $HOME

fi יציאה

פי אחר

echo "ערך לא חוקי." >&2 יציאה 1

fi


שימוש מקרה, נוכל להחליף את ההיגיון הזה במשהו פשוט יותר:


#! / bin / bash

# תפריט מקרה: תוכנית מידע מערכת מונחה תפריט ברורה

הד "

בבקשה תבחר:


1. הצג מידע מערכת

2. הצג שטח דיסק

3. הצג את ניצול שטח הבית

0. צא"

קרא -p "הזן בחירה [0-3] > "


מקרה $REPLY ב

0) הד "התוכנית הסתיימה." יְצִיאָה

;;

#! / bin / bash

# תפריט מקרה: תוכנית מידע מערכת מונחה תפריט ברורה

הד "

בבקשה תבחר:


1. הצג מידע מערכת

2. הצג שטח דיסק

3. הצג את ניצול שטח הבית

0. צא"

קרא -p "הזן בחירה [0-3] > "


מקרה $REPLY ב

0) הד "התוכנית הסתיימה." יְצִיאָה

;;


1) הדהוד זמן פעולה של "שם מארח: $HOSTNAME".

;;

2) df -h

;;

3) if [[ $(id -u) -eq 0 ]]; לאחר מכן

echo "ניצול שטח ביתי (כל המשתמשים)" du -sh /home/*

אחר

echo "ניצול שטח ביתי ($USER)" du -sh $HOME

fi

;;

*) הד "כניסה לא חוקית" >&2 יציאה 1

;;

esac

1) הדהוד זמן פעולה של "שם מארח: $HOSTNAME".

;;

2) df -h

;;

3) if [[ $(id -u) -eq 0 ]]; לאחר מכן

echo "ניצול שטח ביתי (כל המשתמשים)" du -sh /home/*

אחר

echo "ניצול שטח ביתי ($USER)" du -sh $HOME

fi

;;

*) הד "כניסה לא חוקית" >&2 יציאה 1

;;

esac


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


 

מחשוב ענן מערכת ההפעלה המוביל ב-OnWorks: