PracticU

לינוקס Script - חלק 2

בלי כתוביותעם כתוביות
PracticU › קורס לינוקס למתקדמים - הסמכה בינלאומית - Linux - Red Hat - RHCSA / RHCE › לינוקס Script - חלק 2
מילון מושגים:
סקריפט - קובץ המכיל רצף פקודות שמבוצעות על ידי מפרש, לרוב כדי להפוך משימות לאוטומטיות.
הערה - טקסט בקוד שמסביר אותו לבני אדם ואינו מבוצע על ידי המחשב.
כתובת IP - מספר שמזהה באופן ייחודי מכשיר ברשת מבוססת פרוטוקול IP, ומאפשר לשלוח אליו ולקבל ממנו מידע.

לינוקס Script - חלק 2
בחלק השני של סדרת הסרטונים על כתיבת סקריפטים ללינוקס וליוניקס עוסקים בסידור הסקריפט, כך שיהיה ברור גם למי שכתב אותו וגם למי שיערוך אותו בעתיד. מערכת ההפעלה מבצעת את הפקודות בכל מקרה, אבל קוד לא מסודר קשה מאוד לתחזוקה.
כותרת ותיעוד בתחילת הסקריפט
1. בראש הסקריפט כותבים מי כתב אותו, מתי נכתב, ומה הוא עושה: אילו בדיקות הוא מבצע, אילו קבצים הוא מעביר, ומתי הוא רץ.
2. הכותרת נכתבת בתוך מסגרת של הערות, כך שהיא בולטת בעין. המרצה מציין שכתיבת הכותרת נראית מיותרת בהתחלה, אבל היא חוסכת שעות של עבודה בעתיד.
3. מומלץ לכתוב מידע נוסף על השינויים שנעשו בסקריפט לאורך זמן.
חלוקה לחלקים
- מחלקים את הסקריפט לחלקים לפי משימה, למשל חלק לבדיקת קבצים, חלק לשינוי סיומות וחלק לשליחת דוא"ל.
- בין החלקים כותבים כותרת מובחנת, כמו שורה של סולמיות עם שם החלק, כך שקל למצוא אותו בעריכה.
- כשחלק אחד מבוצע בעבר ואינו תלוי בשני, אפשר לדעת שאין צורך לשנות אותו כשמשנים את האחרים.
הערות ליד הפקודות
- כל פקודה, או קבוצה של פקודות שמבצעות משימה אחת, מקבלת הערה שמסבירה מה היא עושה.
- קבוצה של פקודות שמשויכות זו לזו נכתבת בשורות סמוכות, עם הזחה פנימה כשזה מתאים.
- המרצה מסביר שהערות כאלה נראות מסורבלות בתחילה, אבל הן מאפשרות לקרוא את הסקריפט גם אחרי חודשים.
דוגמה בסקריפט
- בסקריפט לדוגמה מופיעה פקודה לניקוי המסך, פקודה להצגת התאריך, השהיה של ארבע שניות, והצגת כתובת ה-IP של כרטיס הרשת הראשון.
- בחלק השני נוספה פקודה לתצוגת חיבורי הרשת.
- כשהמרצה רוצה לשנות את זמן ההשהיה, הוא מוצא אותו מיד בזכות החלוקה לחלקים, ומבין מיד מה כל חלק עושה.
הסיכום: כותרת, חלוקה לחלקים והערות ליד כל פקודה הופכים סקריפט לקריא ולתחזוקה, גם למי שלא כתב אותו.
השיעור הבא בקורס: לינוקס Script - חלק 3
לחץ כאן להורדת הורדת קבצי Script של לינוקס שהיו בסרטים
מילון מושגים:
דיסק - התקן לאחסון קבוע של נתונים, כמו כונן קשיח (HDD) או כונן מבוסס זיכרון מהיר (SSD).
תיקייה - מכל במערכת הקבצים שמשמש לארגון קבצים ותיקיות אחרות בתוך מבנה היררכי.
מחיצה - חלוקה לוגית של דיסק פיזי לאזורים נפרדים, שכל אחד מתפקד כאילו הוא כונן עצמאי.
זיכרון - רכיב מהיר ונדיף שבו המחשב שומר נתונים ותוכניות בזמן ריצתם. תוכנו נמחק עם כיבוי המחשב.
דומיין - תחום ניהולי משותף של מחשבים ומשתמשים ברשת ארגונית, המנוהל מרכזית. גם שם ייחודי של אתר באינטרנט.
אימות - תהליך שמוודא שהמשתמש או המערכת הם מי שהם טוענים שהם, בדרך כלל באמצעות סיסמה, קוד או תעודה.
Active Directory - שירות מדריך של מיקרוסופט לניהול מרכזי של משתמשים, מחשבים והרשאות ברשת ארגונית מבוססת דומיין.
GPO - אובייקט מדיניות קבוצתית ב-Active Directory, שמכיל הגדרות ומדיניות המוחלות על משתמשים ומחשבים.


מבנה ושמות דיסקים ומחיצות בלינוקס:


(Sda (disk0): זה הדיסק הפיזי הראשון (SATA DISK)

(Sda1,Sda2 (Partitions in disk): אלו הן המחיצות בתוך הדיסק הפיזי הראשון.

(Sdb (disk1): זה הדיסק הפיזי השני כמו בוינדוס Disk1

(Sdb1,Sdb2 (Partitions in disk): אלו הן המחיצות בתוך הדיסק הפיזי השני.

מחיצת השורש הראשונה:

וינדוס: C

לינוקס: /

מחיצות נוספות:

וינדוס: D: / E:

לינוקס: /data /example כמו תיקיות.

הערה: בתהליך ההתקנה יוצרים מחיצה נוספת לזיכרון הווירטואלי שנקראת SWAP

מטרת צירוף לינוקס לדומיין הינה לאימות משתמשים מתוך Active Directory בלבד ואין GPO  ללינוקס דרך AD.


הוכן ע"י התלמיד המצטיין: אברהים אבו שיכה

פרקי ההרצאה: לינוקס Script - חלק 2

  1. 00:00

    למה סקריפט צריך להיות מובן

  2. 02:01

    מידע על הכותב ומטרת הסקריפט

  3. 04:08

    הערות לכל פקודה

  4. 04:46

    חלוקת הסקריפט לחלקים

  5. 05:44

    הזחת פקודות של אותה משימה

  6. 07:01

    כתיבת script#2 עם כותרת מסודרת

  7. 10:02

    החלק הראשון ו-Part 1

תמלול ההרצאה: לינוקס Script - חלק 2

הטקסט המלא של הדקות הראשונות בהרצאה «לינוקס Script - חלק 2» בקורס הווידאו של PracticU – כתוביות בעברית עם זמן התחלה לכל פסקה. כך תוכלו לקרוא ולחפש את הנושאים לפני שמתחילים ללמוד.

  1. 00:23

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

  2. 00:55

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

  3. 01:14

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

  4. 01:45

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

  5. 02:11

    מתי הסקריפט שונה, אם הוא שונה. למה נועד הסקריפט? מתי הוא עובד? כמה שיותר מידע על הסקריפט יותר טוב. שוב פעם, זה לא מצחיק, אתם פשוט תשכחו מי כתב את הסקריפט אפילו אחרי חודשיים, אתם פשוט לא תזכרו שאתם כתבו את הסקריפט.

  6. 02:27

    ככה זה בסביבה של מנהלי רשת יוניקס ולינוקס, פשוט אתה כותב הרבה סקריפטים ואתה עובד עם כל מיני, וזה פשוט לא זוכר. אז באמת כמה שיותר מידע על הסקריפט זה מאוד מאוד חשוב.

  7. 02:39

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

  8. 02:56

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

  9. 03:08

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

  10. 03:29

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

  11. 03:50

    שבתוכו כתוב מי כתב, מתי כתבתי, ומה הסקריפט הזה עושה. בודק x, בודק y, ואז שולח אימייל על פי פרמטרים כאלה וכאלה.

  12. 04:01

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

  13. 04:12

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

  14. 04:28

    שוב פעם אנחנו נראה את זה עוד רגע אנחנו נוסיף הערה ליד כל פקודה כמעט שיש לנו בסקריפט זה בהתחלה נראה מאוד סזיפי ואפילו קצת ראה לכם אולי מתסכל כדי לשמוע כולנו רוצים לכתוב סקריפט שעושה א׳ ב׳ ג׳ אז יותר זמן לרשום את ההערות זה לא מדויק ההערות האלה יצילו אתכם בעתיד אתם חייבים את ההערות האלה תאמינו לי אוקיי אז כמובן דבר נוסף שמאוד יכול להקל על הבנה

  15. 04:59

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

  16. 05:25

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

  17. 05:36

    עכשיו חלק ב', זה השינוי סיומן. עכשיו יש לי את הבעיה עם האימיילים, אז אני עובד על חלק ג', שלא קשור לחלק א' וב', זה המנגנון של שליחת האימיילים.

  18. 05:47

    ממש חשוב, חלוקה, ושימו לב מה עשיתי, עשיתי שורות, שורה כזאת של הסולמית, וכתבתי delete logs, send Email, whatever, אתם תראו את זה עוד שנייה.

  19. 05:59

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

  20. 06:28

    הקובץ ההוא משנה את הסיומת ההוא מוחק אה אוקיי אתם מבינים מאוד מאוד נוח אני בטוח שיהיה לכם אולי אתם תראו עוד באינטרנט או שאתם גם תייצרו לעצמכם כל מיני טריקים נוספים וצורות שבהם אם אתם עוזרים לעצמכם להבין את הסקריפטים וכו'

  21. 06:48

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

  22. 07:08

    חמוד אבל הפעם נעשה את זה קצת יותר רציני ונוסיף את אותם הערות ואת אותו מידע שצריך להוסיף בסקריפט. אז הנה התיקייה שלנו של הסקריפטים.

  23. 07:22

    LS מינוס L, יש לנו את הסקריפט הראשון שכתבנו, בואו נכתוב סקריפט שני הפעם. BI סקריפט 2.sh, ואת זה כבר אתם יודעים, יש לנו את ההתחלה של הסקריפט שחייבת להיראות ככה.

  24. 07:44

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

  25. 07:57

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

  26. 08:16

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

  27. 10:20

    יכול מאוד להיות שהוא עושה מה? test command זה אני רוצה להציג לכם פה כמה פקודות ראשוניות ואתם גם יכולים לרשום אם בא לכם עוד פעם זה הכל עניין של איך אתם מרגישים פארט 1 אוקיי ואז אתם גם יודעים שבסקריפט שלכם זה הדבר הראשון שעובד למה כמה זה כבר משהו אחר אבל יכולים לראות עכשיו פארט 1 ואנחנו נעשה פה clear אבל אנחנו נוסיף זוכרים

  28. 11:01

    שאנחנו נוסיף הערות פקודה שאני עכשיו הוספתי

לקורס המלא: קורס לינוקס מתקדם אונליין

ההרצאה הקודמת: לינוקס Script - חלק 1

ההרצאה הבאה: לינוקס Script - חלק 3

הרצאות קשורות מקורסים אחרים

  • כתיבת SCRIPT ב-SQL
  • FIRST YML SCRIPT
  • ה-SCRIPT הראשון שלי
  • תקיפת לינוקס - עם MSFconsole

קורסים נוספים במסלול

  • קורס AWS - ניהול מכונה וירטואלית בענן
  • קורס Terraform - DevOps - Azure & AWS
  • קורס קוברנטיקס - Kubernetes
  • קורס Docker - עם Swarm Cluster
  • קורס DevOps - Ansible
  • קורס PowerShell