از طریق منوی جستجو مطلب مورد نظر خود در وبلاگ را به سرعت پیدا کنید
روش حذف (حذف) پیوندهای نمادین در لینوکس
سرفصلهای مطلب
پیوند نمادین که به عنوان پیوند نمادین نیز شناخته می شود، نوع خاصی از فایل است که به فایل یا دایرکتوری دیگری اشاره می کند روی ماشین شما چیزی شبیه میانبر در ویندوز است. یک پیوند نمادین می تواند به یک فایل یا یک دایرکتوری اشاره کند روی فایل سیستم یا پارتیشن یکسان یا متفاوت. با سیملینک ها می توانید فایل ها و پوشه های خود را با کارایی بیشتری سازماندهی کنید و راحت تر به آنها دسترسی داشته باشید.
این راهنما به شما نشان می دهد که چگونه پیوندهای نمادین را در سیستم های لینوکس/یونیکس با استفاده از آن حذف کنید (حذف کنید). rm
، unlink
، و find
دستورات
قبل از اینکه شروع کنی
برای حذف یک پیوند نمادین، باید مجوز نوشتن داشته باشید روی دایرکتوری حاوی سیم لینک در غیر این صورت، با خطای «عملیات مجاز نیست» مواجه خواهید شد.
هنگامی که یک پیوند نمادین را حذف می کنید، فایلی که به آن اشاره می کند دست نخورده و بدون تاثیر باقی می ماند. هیچ تغییر یا اصلاحی در خود فایل ایجاد نخواهد شد.
استفاده کنید ls -l
دستور برای بررسی اینکه آیا یک فایل داده شده یک پیوند نمادین است یا خیر و فایل یا دایرکتوری را که پیوند نمادین به آن اشاره دارد را بیابید.
ls -l /usr/bin/python
lrwxrwxrwx 1 root root 9 Apr 16 2018 /usr/bin/python -> python2.7
اولین کاراکتر “l” نشان می دهد که فایل یک پیوند نمادین است. نماد “->” فایلی را نشان می دهد که symlink به آن اشاره می کند.
حذف پیوندهای نمادین با rm
این rm
دستور فایل ها و دایرکتوری های داده شده را حذف می کند.
برای حذف یک پیوند نمادین، را فراخوانی کنید rm
دستور به دنبال نام پیوند نمادین به عنوان آرگومان:
rm symlink_name
دستور با صفر خارج می شود و با اجرای موفقیت آمیز هیچ خروجی نمایش داده نمی شود.
با rm
می توانید همزمان بیش از یک پیوند نمادین را حذف کنید. برای انجام این کار، نام پیوندهای نمادین را به عنوان آرگومان ارسال کنید که با فاصله از هم جدا شده اند:
rm symlink1 symlink2
برای اینکه قبل از حذف پیوند علامت از شما خواسته شود، از -i
گزینه:
rm -i symlink_name
برای تایید، تایپ کنید y
و فشار دهید Enter
.
rm: remove symbolic link 'symlink_name'?
اگر پیوند نمادین به دایرکتوری اشاره دارد، آن را اضافه نکنید /
اسلش انتهایی در پایان در غیر این صورت با خطا مواجه خواهید شد:
rm symlink_to_dir/
rm: cannot remove 'symlink_to_dir/': Is a directory
اگر نام استدلال به پایان می رسد /
، rm
دستور فرض می کند که فایل یک دایرکتوری است. این خطا به این دلیل رخ می دهد که، هنگامی که بدون استفاده از -d
یا -r
گزینه، rm
نمی توان دایرکتوری ها را حذف کرد.
بودن روی طرف امن، هرگز استفاده کنید -r
گزینه هنگام حذف پیوندهای نمادین با rm
. برای مثال، اگر تایپ کنید:
rm -f symlink_to_dir/
محتویات دایرکتوری هدف حذف خواهد شد.
حذف پیوندهای نمادین با unlink
این unlink
دستور یک فایل داده شده را حذف می کند. بر خلاف rm
، unlink
تنها یک استدلال را می پذیرد.
برای حذف یک پیوند نمادین، آن را اجرا کنید unlink
دستوری که پس از آن نام سیملینک به عنوان آرگومان آمده است:
unlink symlink_name
اگر دستور با موفقیت اجرا شود، هیچ خروجی نمایش نمی دهد.
را ضمیمه نکنید /
اسلش انتهایی در انتهای نام پیوند علامت زیرا unlink
نمی تواند دایرکتوری ها را حذف کند.
پیوندهای نمادین شکسته را پیدا و حذف کنید
اگر فایل منبع حذف شود یا به مکان دیگری منتقل شود، فایل نمادین آویزان (شکسته) می ماند و دیگر کار نمی کند.
اگر فایل منبع را حذف یا به مکان دیگری منتقل کنید، فایل نمادین آویزان (شکسته) می ماند.
برای پیدا کردن تمام پیوندهای نمادین شکسته در یک فهرست مشخص، دستور زیر را اجرا کنید:
find /path/to/directory -xtype l
/path/to/directory/symlink1
/path/to/directory/subdir/symlink2
این دستور همه لینک های شکسته را در زیر دایرکتوری و زیر شاخه های آن فهرست می کند.
اگر میخواهید پیوندهای نمادین موجود در زیرشاخهها را حذف کنید، آن را پاس کنید -maxdepth 1
گزینه ای به find
:
find /path/to/directory -maxdepth 1 -xtype l
/path/to/directory/symlink1
هنگامی که پیوندهای نمادین شکسته را پیدا کردید، می توانید به صورت دستی آنها را حذف کنید rm
یا unlink
یا استفاده کنید -delete
گزینه از find
دستور:
find /path/to/directory -xtype l -delete
نتیجه
برای حذف یک پیوند نمادین، از یکی استفاده کنید rm
یا unlink
دستور و به دنبال آن نام سیملینک به عنوان آرگومان. هنگام حذف یک پیوند نمادین که به دایرکتوری اشاره می کند، یک اسلش انتهایی به نام پیوند علامت اضافه نکنید.
اگر سوال یا بازخوردی دارید، در کامنت بگذارید.
terminal
لطفا در صورت وجود مشکل در متن یا مفهوم نبودن توضیحات، از طریق دکمه گزارش نوشتار یا درج نظر روی این مطلب ما را از جزییات مشکل مشاهده شده مطلع کنید تا به آن رسیدگی کنیم
زمان انتشار: 1403-01-23 02:10:02