מה המשמעות של ./ בלינוקס?

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

לכל חובבי הקונסולות ./ אולי נראה די מוכר. זה אחד מהדברים הגדולים הרבים בלינוקס שהופך אותו ללא מאמץ לשימוש מהמסוף.

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

המשמעות של ./ עד לנקודה

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

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

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

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

הבנה ./ בחתיכות

בואו ננסה להבין את המשמעות של ./ בקטעים נפרדים של . (נקודה) ו / (קו נטוי).

. (נְקוּדָה):- בהקשר לשאלה שבה אנו דנים במאמר זה, ה . (נקודה) פירושו פשוט ה'המדריך הנוכחי של המשתמש‘.

דוגמא:

gauravv@ubuntu:~$ ls -al סך הכל 179572 drwxr-xr-x 86 gauravv gauravv 266240 12 בספטמבר 09:10 . drwxr-xr-x 4 root root 4096 4 בספטמבר 18:29 .. drwxr-xr-x 2 gauravv gauravv 65536 15 ביולי 2018 100CANON 

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

/ (קו נטוי):- כאשר אנו מצרפים א / (לוכסן) ל- .(נקודה) זה פשוט מוודא שאתה לא פועל על קובץ. זה אותו דבר כמו הוספה / לכל שם ספרייה אחר.

הֲבָנָה ./ עם דוגמה

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

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

אבל נניח שהמסמך שברצונך לערוך נמצא בספרייה אחרת. יש ספרייה בשם מֶרחָב וכאן טמון המסמך שלך cool.txt. אז נתיב המיקום של זה cool.txt הקובץ הופך ל'/home/gaurav/space/cool.txt‘.

כדי לפתוח את הקובץ הזה ב ננו, אתה בהחלט יכול להקליד CD[directory_name_where_file_located] ואז nano cool.txt.

אבל כדי לעשות את זה יותר יעיל וקל אנחנו יכולים פשוט להקליד ננו ./space/cool.txt.

עיין בתפוקות למטה כדי להבין טוב יותר את הדוגמה.

gaurav@ubuntu:~$ pwd /home/gaurav gaurav@ubuntu:~$

כאן ספריית הבית היא '/home/gaurav'. והקובץ שיש לערוך (cool.txt) ממוקם ב'/home/gaurav/space‘.

אבל נניח שאני לא רוצה לשנות את הספרייה הנוכחית שלי (/home/gaurav) ועבוד ישירות מהספרייה הביתית שלי. אעשה זאת כדלקמן.

gaurav@ubuntu:~$ nano ./space/cool.txt GNU nano 2.9.3 ./space/cool.txt שונה היי שמי טוני סטרק אני גיבור על.
gaurav@ubuntu:~$ cat ./space/cool.txt היי שמי טוני סטרק אני גיבור על. gaurav@ubuntu:~$ 

כאן ערכתי את הקובץ מספריית הבית שלי עצמה מבלי לשנות את הנתיב.

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

אם היית מקליד רק nano cool.txt, אתה היית מפקד ננו כדי לפתוח קובץ בספריית הבית (/home/gaurav) זה יחזיר שגיאה מכיוון שהקובץ לא קיים בספריית הבית. וזו הסיבה שאתה משתמש ננו ./space/cool.txt

הפעלת תוכניות עם ./

./ יכול לשמש להפעלת קבצי ההפעלה של תוכנית. נבין זאת בעזרת דוגמה.

אם אני רוצה להפעיל תוכנית C ב- שלי $PATH (להשתמש הד $PATH הפקודה כדי לקבל את ה-PATH שלך), אני פשוט ארכיב את תוכנית C. בעת הידור, קובץ הפעלה בשם א.אאוט ייווצר בספרייה הנוכחית. כדי להפעיל את התוכנה הזו אפעיל את קובץ ההפעלה א.אאוט. כדי להפעיל את תוכנית C זו, אני פשוט אקליד ./a.out כדי להפעיל את תוכנית C.

gaurav@ubuntu:~/space$ sudo gcc demo.c [sudo] סיסמה עבור gaurav: gaurav@ubuntu:~/space$ ./a.out gaurav@ubuntu:~/space$ 

בהקשר זה, הנחת הפקודה עם ./ אומר למעשה "שכח מה-PATH, אני רוצה שתחפש רק בספרייה הנוכחית".

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

../ פירושו ספריית אב או ./work/demo.c מה שאומר שחפש את הקובץ demo.c בספרייה ששמה עֲבוֹדָה.

סיכום

./" משמש בשם נתיב כדי לציין את הספרייה הנוכחית. זה יכול גם להריץ סקריפט מספריית העבודה הנוכחית. זהו תרגול חיסכון בזמן להשתמש ב-./ ב-$PATH שלך מכיוון שהוא מאפשר לך לשנות קבצים שאינם קיימים בספרייה הנוכחית שלך וגם זה אפילו מבלי לעזוב את ספריית העבודה הנוכחית שלך.