OnWorks Linux ו-Windows Online WorkStations

לוגו

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

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

(()) - מיועד למספרים שלמים

בנוסף [[]] פקודה מורכבת, לחבוט מספק גם את (()) פקודה מורכבת, שימושית להפעלה על מספרים שלמים. הוא תומך במערך מלא של הערכות אריתמטיות, נושא שנעסוק במלואו בפרק 34.

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



[me@linuxbox ~]$ אם ((1)); ואז מהדהד "זה נכון."; fi

זה נכון.

[me@linuxbox ~]$ אם ((0)); ואז מהדהד "זה נכון."; fi

[me@linuxbox ~]$

[me@linuxbox ~]$ אם ((1)); ואז מהדהד "זה נכון."; fi

זה נכון.

[me@linuxbox ~]$ אם ((0)); ואז מהדהד "זה נכון."; fi

[me@linuxbox ~]$


שימוש (()), נוכל לפשט מעט את מבחן שלם2 תסריט כזה:


#! / bin / bash


# test-integer2a: הערך את הערך של מספר שלם.


INT=-5


if [[ "$INT" =~ ^-?[0-9]+$ ]]; אז אם ((INT == 0)); לאחר מכן

echo "INT הוא אפס."

אחר

if ((INT < 0)); לאחר מכן

echo "INT הוא שלילי."

אחר

echo "INT הוא חיובי."

fi

if ((((INT % 2)) == 0)); לאחר מכן

הד "INT הוא זוגי."

אחר

echo "INT הוא מוזר."

fi

#! / bin / bash


# test-integer2a: הערך את הערך של מספר שלם.


INT=-5


if [[ "$INT" =~ ^-?[0-9]+$ ]]; אז אם ((INT == 0)); לאחר מכן

echo "INT הוא אפס."

אחר

if ((INT < 0)); לאחר מכן

echo "INT הוא שלילי."

אחר

echo "INT הוא חיובי."

fi

if ((((INT % 2)) == 0)); לאחר מכן

הד "INT הוא זוגי."

אחר

echo "INT הוא מוזר."

fi



echo "INT אינו מספר שלם." >&2 יציאה 1

fi


echo "INT אינו מספר שלם." >&2 יציאה 1

fi

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


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