קישור סימלי (נקרא גם קישור סמלי) הוא סוג של קובץ בלינוקס שמצביע על קובץ אחר או תיקיה במחשב שלך. קישורי סימול דומים לקיצורי דרך ב- Windows.
יש אנשים המכנים קישורי סימבול "קישורים רכים" - סוג של קישור במערכות לינוקס / יוניקס - בניגוד ל"קישורים קשיחים ".
ההבדל בין קישור רך לחוליה קשה
קישורים רכים דומים לקיצורי דרך, ויכולים להצביע על קובץ או ספריה אחרים בכל מערכת קבצים.
קישורים קשיחים הם גם קיצורי דרך עבור קבצים ותיקיות, אך לא ניתן ליצור קישור קשיח עבור תיקיה או קובץ במערכת קבצים אחרת.
בואו נסתכל על השלבים הכרוכים ביצירה והסרה של קישור סימלי. נראה גם מהם קישורים שבורים וכיצד למחוק אותם.
כיצד ליצור סימלינק
התחביר ליצירת קישור סימבול הוא:
ln -s
ln
היא פקודת הקישור. -s
מציין הדגל כי הקישור צריך להיות רך. -s
ניתן להזין גם כ -symbolic
.
כברירת מחדל, ln
הפקודה יוצרת קישורים קשים. הטיעון הבא הוא path to the file (or folder)
שאתה רוצה לקשר. (כלומר, הקובץ או התיקיה שעבורם תרצה ליצור קיצור דרך.)
והוויכוח האחרון הוא path to link
עצמו (קיצור הדרך).
כיצד ליצור קישור סימלי לקובץ - פקודה לדוגמא
ln -s /home/james/transactions.txt trans.txt
לאחר הפעלת פקודה זו, תוכל לגשת ל- /home/james/transactions.txt
with trans.txt
. כל שינוי בו trans.txt
יבוא לידי ביטוי גם בקובץ המקורי.
שים לב שפקודה זו לעיל תיצור את קובץ הקישור trans.txt
בספריה הנוכחית שלך. אתה יכול גם ליצור קובץ מקושר בתיקייה לקשר את זה:
ln -s /home/james/transactions.txt my-stuffs/trans.txt
חייבת להיות בספריה הנוכחית שלך מדריך שכבר נקרא "my-stuffs" - אם לא הפקודה תשלח שגיאה.
כיצד ליצור קישור סימלי לתיקיה - פקודה לדוגמא
בדומה לעיל, נשתמש:
ln -s /home/james james
זה ייצור תיקייה מקושרת בשם 'james' שתכיל את התוכן של /home/james
. כל שינוי בתיקיה המקושרת הזו ישפיע גם על התיקיה המקורית.
כיצד להסיר קישור
לפני שתרצה להסיר קישור סימלי, ייתכן שתרצה לאשר שקובץ או תיקיה הם סימנלינק, כדי לא להתעסק בקבצים שלך.
אחת הדרכים לעשות זאת היא:
ls -l
הפעלת פקודה זו במסוף שלך תציג את מאפייני הקובץ. בתוצאה, אם התו הראשון הוא אות קטנה L ('l'), פירוש הדבר שהקובץ / התיקיה הם קישור סימלי.
בסוף תראה גם חץ (->) המציין את הקובץ / התיקיה אליהם הסימלינק מצביע.
ישנן שתי שיטות להסרת קישור סימלי:
כיצד להשתמש בטל קישור להסרת סימלינק
התחביר הוא:
unlink
פעולה זו מוחקת את הקישור אם התהליך מצליח.
גם אם הסימלינק הוא בצורה של תיקיה, אל תצרף את '/', כי לינוקס תניח שזו ספריה ולא unlink
יכולה למחוק ספריות.
כיצד להשתמש ב- rm להסרת Symlink
כפי שראינו, קישור סימול הוא רק עוד קובץ או תיקיה המצביעים על קובץ או תיקיה מקוריים. כדי להסיר קשר זה, תוכל להסיר את הקובץ המקושר.
לפיכך התחביר הוא:
rm
לדוגמה:
rm trans.txt rm james
שים לב כי ניסיון לעשות זאת rm james/
יגרום לשגיאה, מכיוון ש- Linux תניח ש- james / 'הוא ספריה שתדרוש אפשרויות אחרות כמו r
ו- f
. אבל זה לא מה שאנחנו רוצים. קישור סימולי עשוי להיות תיקיה, אך אנו עוסקים רק בשם.
היתרון העיקרי של rm
מעל unlink
הוא שאתה יכול להסיר קישורים מרובים בו זמנית, כמו שאתה יכול לעשות עם קבצים.
כיצד למצוא ולמחוק קישורים שבורים
קישורים שבורים מתרחשים כאשר הקובץ או התיקיה שאליהם מצביע קישור משנה את הנתיב או נמחקים.
לדוגמה, אם "transactions.txt" מהלכים מ /home/james
ל /home/james/personal
, הקישור "trans.txt" הופך שבור. כל ניסיון לגשת לקובץ יביא לשגיאה 'אין קובץ כזה או ספרייה'. הסיבה לכך היא שלקישור אין תוכן משלו.
כאשר אתה מגלה קישורים שבורים, תוכל למחוק את הקובץ בקלות. דרך קלה למצוא קישורים סימבולים שבורים היא:
find /home/james -xtype l
זה יפרט את כל קישורי הסימול שבורים james
בספרייה - מקבצים לספריות ועד ספריות משנה.
העברת -delete
האפשרות תמחק אותם כך:
find /home/james -xtype l -delete
מסיימים
קישור סמלי הם תכונה מעניינת של מערכות לינוקס ו- UNIX.
באפשרותך ליצור קישורי סימבול נגישים להפניה לקובץ או לתיקיה שאחרת לא יהיה נוח לגישה אליהם. בעזרת תרגול מסוים, תוכלו להבין כיצד אלה פועלים ברמה אינטואיטיבית, והם יעשו אתכם הרבה יותר יעילים בניהול מערכות קבצים.