OnWorks Linux ו-Windows Online WorkStations

לוגו

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

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

מיקום קובץ הסקריפט

עם ערכת ההרשאות, אנו יכולים כעת להפעיל את הסקריפט שלנו:



[me@linuxbox ~]$ ./שלום עולם

שלום עולם!

[me@linuxbox ~]$ ./שלום עולם

שלום עולם!


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



[me@linuxbox ~]$ שלום עולם

bash: hello_world: הפקודה לא נמצאה

[me@linuxbox ~]$ שלום עולם

bash: hello_world: הפקודה לא נמצאה


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

/bin/ls כאשר אנו מקלידים ls בשורת הפקודה. ספריית /bin היא אחד המדריכים שהמערכת מחפשת באופן אוטומטי. רשימת הספריות מוחזקת בתוך משתנה סביבה בשם PATH. המשתנה PATH מכיל רשימה מופרדת בנקודתיים של ספריות שיש לחפש. אנו יכולים לראות את התוכן של PATH:

מיקום קובץ הסקריפט


[me@linuxbox ~]$ הד $ PATH

/home/me/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:

/bin:/usr/games

[me@linuxbox ~]$ הד $ PATH

/home/me/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:

/bin:/usr/games


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

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



[me@linuxbox ~]$ mkdir bin [me@linuxbox ~]$ mv hello_world bin [me@linuxbox ~]$ שלום עולם

שלום עולם!

[me@linuxbox ~]$ mkdir bin [me@linuxbox ~]$ mv hello_world bin [me@linuxbox ~]$ שלום עולם

שלום עולם!


וכך זה קורה.

אם נתיב המשתנה אינו מכיל את הספרייה, נוכל להוסיף אותו בקלות על ידי הכללת שורה זו ב- שלנו .bashrc קובץ:


ייצוא PATH=~/bin:"$PATH"

ייצוא PATH=~/bin:"$PATH"


לאחר ביצוע שינוי זה, הוא ייכנס לתוקף בכל סשן מסוף חדש. כדי להחיל את השינוי על הפעלת הטרמינל הנוכחית, עלינו לבקש מהמעטפת לקרוא מחדש את .bashrc קוֹבֶץ. ניתן לעשות זאת על ידי "מיקור" אותו:



[me@linuxbox ~]$ . .bashrc

[me@linuxbox ~]$ . .bashrc


הנקודה (.) הפקודה היא מילה נרדפת ל- מָקוֹר command, מעטפת מובנית שקוראת קובץ מוגדר של פקודות מעטפת ומתייחסת אליו כאל קלט מהמקלדת.


תמונה

הערה: אובונטו (ורוב ההפצות האחרות המבוססות על דביאן) מוסיפה אוטומטית את

ספריית ~/bin למשתנה PATH אם ספריית ~/bin קיימת כאשר קובץ ה-bashrc של המשתמש מופעל. אז במערכות אובונטו, אם ניצור את ספריית ~/bin ואז נצא ונכנס שוב, הכל עובד.


תמונה


 

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