תכנות - שיעור 30
19/February/2006
עוד פקודות Linux
הצגנו מספר פקודות שמושיות ב-Linux.
למשל:
-
head
הדפס התחלה של קובץ.
-
tail
הדפס סוף של קובץ.
-
wc
הדפס מספר שורות, מספר מלים ומספר אותיות שבקובץ (קבצים).
-
grep
חפש והדפס היכן נמצאת מחרוזת בקבצים.
עיקר הכוח של פקודות מהסוג הזה הוא ביכולת להפעילן ביחד
על ידי
(pipe)
צינור שיוצרים אותו על ידי התו "|". לדוגמא נשתעשע עם הקובץ
/usr/share/dict/words
yotam@durini:l30:356> grep q /usr/share/dict/words | wc -l
1411
yotam@durini:l30:357> grep q /usr/share/dict/words | grep -v qu
Chongqing
Compaq
Compaq's
Esq
Esq's
Iqbal
Iqbal's
Iraq
Iraq's
Iraqi
Iraqi's
Iraqis
Qiqihar
Qiqihar's
Urumqi
q
yotam@durini:l30:358> grep q /usr/share/dict/words | grep -v qu | wc -l
16
|
אנו רואים שיש 1411 שורות עם האות q, ומתוכן את השורות
שאין
בהם qu, ואת מספרן שהוא 16.
תיעוד
בדרך כלל, אפשר למצוא תיעוד על פקודות Linux בדרכים הבאות:
-
קריאה לפקודה ללא פרמטרים. זה לא עובד כאשר הפקודה יכולה לעבוד
יפה ללא פרמטרים.
-
קריאה עם פרמטר
--help
למשל:
head --help
קריאת דפי
manual
למשל
man head
-
קריאת דפי
information
למשל
info head
ניתן לבצע זאת גם מתוך
(אין כמו)
emacs
על ידי פקודת
M-x info
-
חיפוש ב-
http://www.google.com/linux
בסיסים
עד כה ראינו כיצד ממספר שלם נתון אפשר לבנות מחרוזת אותיות
של הייצוג שלי בבסיס רצוי.
הבעיה ההפוכה היא לבנות מספר ממחרוזת ספרות (אותיות).
למעשה, Python נותן זאת על ידי הפונקציה
int()
אך בכל זאת הראינו
כיצד נתן לבצע זאת ידנית.
תרגילים
פתרונות לתרגילים קודמים
תוכלו
לראות
או
להוריד
פתרון לתרגיל שניתן
בשעור קודם
.
חדשים:
-
נסו למצוא תיעוד של הפקודות שהוזכרו למעלה בכל השיטות שצוינו למעלה.
-
הורידו את התכנית,
והריצו אותה על ידי שורת פקודה:
./int10.py 0 13 mymistake 2006
והבינו כיצד היא עובדת.
-
כתבו פונקציה
int16(n)
שמקבלת מחרוזת של אותיות שמיצגת מספר בבסיס
16
ומחזירה את ערכו כמספר
אם הוא חוקי,
ומחזירה
אחרת - כלומר אם יש אות שאיננה מתארת ספרה בבסיס 16.
-
כתבו תוכנית שקוראת את השורות של קובץ המלים:
/usr/share/dict/words
בכל שורה יש מילה אחת. הדפיסו את המילים
שיכולות להציג
באופן חוקי מספרים בבסיס 16.
במערכת שלי היו (באותיות קטנות) 59 מלים שכאלו.
שימו לב שיש להתעלם מתווי "שורה חדשה".
חזרה לעמוד האם