מדריך יוניקס (Unix) מספר 7 - איך לעבוד עם משתנים בסקריפטים (Scripts)
בדומה לשפות תכנות אחרות גם בשפת הסקריפטים של יוניקס ניתן לעבוד עם משתנים. משתנים ביוניקס יכולים להכיל מחרוזות, מספרים,פלטים של פקודות, קבצים וספריות. מדריך זה יסביר כיצד להשתמש במשתנים.
What You'll Need
- יוניקס
- משתנים
- משתנים בסקריפטים
- איך להשתמש במשתנים ביוניקס
Steps
- 1
Step 1
הכנסו לעורך טקסט וצרו סקריפט shell. במידה ואינכם יודעים לעשות זאת ראו מדריך יוניקס מספר 6. - 2
Step 2
משתנים ביוניקס אינם צריכים להיות מוגדרים מראש כמו משתנים בשפות תכנות אחרות. המשתנים מוגדרים על פי הערך שמוכנס אליהם. משתנה יכול להכיל מספר, תו, מחרוזת, פלט של פקודה, קובץ ועוד. בכדי להכניס ערך למשתנה יש צורך לרשום לפני המשתנה את המילה set ואחריו את הסימן "=" ואת הערך שאתם רוצים להכניס אליו. בכדי להשתמש בערך שבתוך המשתנה(בין אם זה מחרוזת,מספר וכו') נרשום לפני המשתנה את הסימן "$". בכדי להמחיש, נשתמש בדוגמא הבאה, רשמו בסקריפט: set number = 3 echo $number שמרו וצאו מעורך הטקסט. -
- 3
Step 3
נריץ את הסקריפט ונקבל את הפלט: 3 set number = 3 שומר את המספר 3 במשתנה number. ו echo $number מדפיס את הערך שהמשתנה number מכיל. - 4
Step 4
כמו שהוזכר לעיל, משתנה יכול להכיל גם מחרוזת. בכדי לשמור מחרוזת במשתנה רשמו את המילה set ואחריה את הסימן "=" ובגרשיים " " הכניסו את המחרוזת. רשמו בסקריפט: "set somestring="a string printed from a variable echo $somestring שמרו וצאו מהעורך. - 5
Step 5
הריצו את הסקריפט. הרצת הסקריפט תציג את תוכן משתנה הsomestring. - 6
Step 6
ניתן לשמור פלטים של פקודות במשתנים ולהשתמש בהם אח"כ. בכדי לעשות זאת יש לרשום את המילה set ואחריה את הסימן "=" ולאחר מכן את הפקודה שברצונכם לבצע כאשר היא סגורה בסימן ` מכל צד (נמצא משמאל למספר 1 על המקלדת) . רשמו בעורך טקסט: `set somecommand = `wc -c MyFirstScript echo $somecommand כאשר MyFirstScript זה הסקריפט שאנחנו עובדים עליו כרגע. שמרו וצאו מהעורך. - 7
Step 7
הריצו את הסקריפט. הפעולה `set somecommand = `wc -c MyFirstScript שמרה את הפלט של הפקודה wc -c MyFirstScript והכניסה אותה לsomecommand. ו echo $somecommand מדפיסה את הערך שבתוך המשתנה. wc -c MyFirstScript מחזירה את מספר התוים שבקובץ MyFirstScript ואת שם הקובץ. - 8
Step 8
בכדי לעשות פעולות אריתמטיות על משתנים כמו חיבור, חיסור כפל וחילוק, יש להגדיר את המשתנה כאריתמטי. כדי לעשות זאת נרשום לפני המשתנה את הסימן "@" , אחריו את הסימן "=" ואחריו מספר (או משתנה המכיל מספר). רשמו בסקריפט: sum = 3@ sum = $sum + 4@ echo $sum שמרו וצאו מהסקריפט. - 9
Step 9
הריצו את הסקריפט. המספר שיתקבל הוא 7. - 10
Step 10
ניתן להגדיר משתנים כמערכים. למעשה כל צירוף של מחרוזות (משפט) עם רווח בינהם הוא מערך כאשר כל מחרוזת (מילה) נמצאת בתא במערך. רשמו בסקריפט: `set array = `wc -c MyFirstScript echo "this is the whole array: $array [echo "this is what the first cell contains:" $array[1 [echo "this is what the second cell contains:" $array[2 בסקריפט זה הגדרנו תחילה שהמשתנה array יקבל את הפלט של הפקודה wc -c MyFirstScript שאמור להיות מספר התווים ושם הקובץ, כלומר מערך בעל שני תאים כאשר אחד מכיל את מספר התווים והשני את שם הקובץ. לאחר מכן הדפסנו את כל המערך array$ ואז את התאים לבדם - התא הראשון [array[1 המכיל את המספר והתא השני [array[2 המכיל את שם הקובץ. - 11
Step 11
הריצו את הסריקפט. ותקבלו הדפסה של כל המערך, התא הראשון והתא השני.