כתיבת קוד — שיעור 31
מבוא ללינוקס CLI
כל 2 משימות הקוד שנשמרו מהשיעור מופיעות כאן, עם דרישות, דוגמאות וקוד פתיחה. אפשר לכתוב פתרון בעורך המקומי וללחוץ על „בדיקת AI” לקבלת ציון, רמזים והערות.
T2 · בסיסי200 נק'~12 דק'algorithmic
chmod — סימבולי לאוקטלי
ממש to_octal(sym) הממיר מחרוזת הרשאות סימבולית בת 9 תווים (rwxrwxrwx לפי owner/group/other; '-' = כבוי) למחרוזת אוקטלית בת 3 ספרות. r=4, w=2, x=1.
דוגמאות
to_octal('rwxr-xr--') → '754'
to_octal('rw-r--r--') → '644'
הפתרון נשמר מקומית אוטומטית.
T3 · בינוני350 נק'~22 דק'algorithmic
החלטת גישה של Unix
ממש can_access(mode, file_owner, file_group, user, user_groups, op). mode הוא int אוקטלי (למשל 0o640). קבע איזו מחלקת-הרשאות חלה: owner אם user==file_owner; אחרת group אם file_group ב-user_groups; אחרת other. op הוא 'r'/'w'/'x'. החזר True אם למחלקה יש את ההרשאה. (שים לב לסדר הקדימות — owner גובר על group.)
דוגמאות
can_access(0o640,'alice','staff','alice',['alice'],'r') → True
can_access(0o640,'alice','staff','bob',['staff'],'w') → False
הפתרון נשמר מקומית אוטומטית.