دستور rm در لینوکس برای حذف (پاک کردن) فایلها و دایرکتوریها استفاده میشود. نام rm مخفف "remove" به معنای حذف است. با استفاده از این دستور، میتوانید فایلها و دایرکتوریها را از سیستم خود حذف کنید. هنگام استفاده از این دستور با احتیاط عمل کنید؛ زیرا عملیات حذف غیرقابل بازگشت است و ممکن است دادههای مهم را از دست بدهید. مطمئن شوید که فایلها و دایرکتوریهای مورد نظر را صحیح انتخاب کرده و از اینکه دادههای مهم را حذف نمیکنید، اطمینان حاصل کنید. در ادامه شما را با نحوه استفاده از این دستور بیشتر آشنا می کنیم.
نحوه استفاده از دستور rm برای حذف فایل ها
دستور rm در لینوکس برای حذف (پاک کردن) فایلها و دایرکتوریها استفاده میشود. اما باید با احتیاط و دقت از این دستور استفاده کنید؛ زیرا عملیات حذف غیرقابل بازگشت است و ممکن است دادههای مهم را از دست بدهید. در ادامه، نحوه استفاده از این دستور را بررسی میکنیم:
حذف یک فایل:
برای حذف یک فایل، دستور زیر را اجرا کنید:
rm نام_فایل
به عنوان مثال، برای حذف فایل با نام "example.txt" دستور زیر را وارد کنید:
rm example.txt
حذف چند فایل:
برای حذف چند فایل به صورت همزمان، نام فایلها را با فاصله جدا کنید. به عنوان مثال:
rm file1.txt file2.txt file3.txt
حذف دایرکتوری:
برای حذف یک دایرکتوری و محتویات آن، از پارامتر "-"r یا "-"rf استفاده کنید. پارامتر "-"r به معنی حذف بازگشتی (حذف بازگشتی همه فایلها و زیردایرکتوریها) است و پارامتر "-"f برای حذف بدون تایید نمایش دادهها است. مطمئن شوید که با دقت از این پارامترها استفاده میکنید، زیرا باعث حذف بیبرگشت محتویات میشوند. به عنوان مثال:
rm -r نام_دایرکتوری
یا
rm -rf نام_دایرکتوری
برای حذف دایرکتوری با نام "mydir "همراه با محتویات آن، دستور زیر را اجرا کنید:
rm -r mydir
در هر صورت، قبل از استفاده از دستور rm، مطمئن شوید که فایل یا دایرکتوری مورد نظر را درست انتخاب کرده و از اینکه دادههای مهم را حذف نمیکنید، اطمینان حاصل کنید. همچنین ممکن است برای اجرای این دستور نیاز به دسترسی ادمینی (Superuser )باشد.
آیا دستور rm میتواند فایلها را به صورت بازگشتی حذف کند؟
دستور rm به صورت پیشفرض فایلها را به صورت غیربازگشتی حذف میکند، یعنی فقط فایلها در دایرکتوری مورد نظر حذف میشوند و زیردایرکتوریها حذف نمیشوند. اما، اگر از پارامتر "r-" استفاده کنید، دستور rm میتواند فایلها را به صورت بازگشتی حذف کند. پارامتر"r-" به معنی حذف بازگشتی است و تمامی فایلها و زیردایرکتوریها در دایرکتوری مورد نظر را حذف میکند.
مثال:
rm -r directory
در این مثال، دستور rm -r directory تمامی فایلها و زیردایرکتوریها در دایرکتوری با نام "directory "را به صورت بازگشتی حذف خواهد کرد.
آیا دستور rmفایلها را به سطل زباله منتقل میکند یا آنها را بلافاصله حذف میکند؟
این دستور در لینوکس فایلها را بلافاصله حذف میکند و آنها را به سطل زباله ((Trash منتقل نمیکند. این یعنی فایلها پس از حذف، به طور دائمی از سیستم شما حذف میشوند و قابل بازیابی نیستند. این عملیات غیرقابل بازگشت است، بنابراین لطفاً با احتیاط کامل از این دستور استفاده کنید و از اینکه دادههای مهم را به طور ناخواسته حذف نمیکنید، اطمینان حاصل کنید.
اگر میخواهید فایلها را به سطل زباله منتقل کنید تا در صورت نیاز بتوانید آنها را بازیابی کنید، باید از دستورات دیگری مانند "trash-put"، "gvfs-trash" یا gio trash استفاده کنید. این دستورات به شما اجازه میدهند فایلها را به سطل زباله منتقل و در صورت نیاز آنها را بازیابی کنید.
دستور rmdir در لینوکس چیست؟
دستور rmdir در لینوکس برای حذف دایرکتوریها استفاده میشود. نام rmdir مخفف "remove directory " به معنای حذف دایرکتوری است. با استفاده از این دستور، میتوانید دایرکتوریهای خالی را از سیستم خود حذف کنید.
ساختار دستور rmdir به صورت زیر است:
rmdir [پارامترها] نام_دایرکتوری
به طور پیشفرض، دستور "rmdir "تنها دایرکتوریهای خالی را حذف میکند. اگر دایرکتوری دارای فایلها یا دایرکتوریهای دیگر باشد این دستور خطا میدهد و حذف انجام نمیشود. برای حذف دایرکتوریهای غیرخالی، میتوانید از دستور rm با پارامتر "r- " استفاده کنید.
به عنوان مثال برای حذف یک دایرکتوری خالی می توانید دستور زیر را اجرا کنید.
rmdir mydir
برای حذف چند دایرکتوری خالی به صورت همزمان می توانید دستور زیر را اجرا کنید.
rmdir dir1 dir2 dir3
لطفاً توجه داشته باشید که دستور rmdir تنها برای حذف دایرکتوریهای خالی استفاده میشود و در صورت وجود فایلها یا زیردایرکتوریها در دایرکتوری مورد نظر، خطا خواهید دید.
چگونه می توان فایل های حذف شده با دستور rm را بازیابی کرد؟
دستور rmفایلها و دایرکتوریها را به صورت دائمی حذف میکند و به طور معمول امکان بازیابی آنها به راحتی وجود ندارد. زمانی که از دستور "rm " استفاده میکنید، سیستم عامل فایلها را بدون استفاده از سطل زباله (Trash )حذف میکند و اطلاعات آنها به صورت غیرقابل بازیابی از روی دیسک پاک میشوند. با این حال، در برخی موارد، ممکن است بتوانید از روشهایی برای بازیابی فایلهای حذف شده استفاده کنید. در ادامه چند روش رایج برای بازیابی فایلها را ذکر میکنیم:
استفاده از سطل زباله
اگر از یک محیط گرافیکی استفاده میکنید و سطل زباله فعال است، ممکن است بتوانید فایلهای حذف شده را از سطل زباله بازیابی کنید. برای این کار، به سطل زباله خود رفته و فایلهای مورد نظر را بازیابی کنید.
استفاده از نرمافزارهای بازیابی فایل
برخی نرمافزارها و ابزارهای بازیابی فایل وجود دارند که به شما کمک میکنند فایلهای حذف شده را بازیابی کنید. مثالهایی از این نرمافزارها عبارتند از "TestDisk"، "PhotoRec"، "Recuva" و "EaseUS Data Recovery Wizard ".این نرمافزارها میتوانند در بازیابی فایلهایی که هنوز از روی دیسک حذف نشدهاند، موثر باشند.
استفاده از اسکریپتها و روشهای پیشرفته
برخی افراد و توسعهدهندگان اسکریپتها و روشهای پیشرفتهتری برای بازیابی فایلها از روی دیسک توسعه دادهاند. این روشها معمولاً نیاز به دانش فنی و تخصصی دارند و در صورتی که با علم بازیابی فایلها آشنا نیستید، استفاده از آنها دشوارتر خواهد بود.
از قبل پشتیبانگیری کنید
بهترین روش برای جلوگیری از از دست رفتن اطلاعات، ایجاد نسخه پشتیبان منظم از فایلهای مهمتان است. این کار میتواند شامل ایجاد نسخه پشتیبان بر روی درایو خارجی، استفاده از سرویسهای ذخیره سازی ابری، یا استفاده از نرمافزارهای پشتیبانگیری باشد.
استفاده از برنامههای بازیابی فایل
در برخی موارد ممکن است بتوانید با استفاده از برنامههای بازیابی فایل، فایلهایی را که با دستور "rm "حذف شدهاند، بازیابی کنید.؛ اما احتمال بازیابی با موفقیت وابسته به شرایط خاصی است و نمیتوان به صورت قطعی تضمین کرد که تمامی فایلها قابل بازیابی خواهند بود. به طور کلی، توصیه میشود که در مورد حذف فایلها دقت و احتیاط لازم را داشته باشید و همواره از ایجاد نسخه پشتیبان منظم از اطلاعات مهم خود استفاده کنید تا در صورت نیاز آنها را به راحتی بازیابی کنید.
حذف برنامه در لینوکس
برای حذف (پاک کردن) یک برنامه در لینوکس، معمولاً از سیستم مدیریت بستهها (Package Manager ) استفاده میشود. روش حذف برنامه بستگی به نوع سیستم مدیریت بستهها و توزیع لینوکسی که استفاده میکنید دارد. در ادامه، نمونهای از دستورات حذف برنامه در دو سیستم مدیریت بستههای رایج در لینوکس، یعنی APT و YUM/RPM را بررسی میکنیم:
حذف برنامه برای سیستمهای مبتنی بر APT مانند Ubuntu، Debian و Linux Mint با استفاده از دستورات زیر امکان پذیر است.
حذف برنامه با استفاده از دستور "apt-get":
sudo apt-get remove نام_برنامه
یا
sudo apt-get purge نام_برنامه
حذف برنامه ها با استفاده از دستور "apt"
sudo apt remove نام_برنامه
یا
sudo apt purge نام_برنامه
حذف برنامه ها در سیستمهای مبتنی بر YUM/RPM مانند Fedora) و CentOS) با استفاده از دستورات زیر امکان پذیر است.
با استفاده از دستور "yum"
sudo yum remove نام_برنامه
با استفاده از دستور "dnf"
sudo dnf remove نام_برنامه
لطفاً توجه داشته باشید که برای اجرای این دستورات، شما باید دسترسی سوپرکاربر ((superuser یا استفاده از دستور sudo را داشته باشید. همچنین، بسته به توزیع لینوکسی و سیستم مدیریت بستههای خاص، ممکن است دستورات متفاوتی برای حذف برنامهها در دسترس باشد. لذا برای جزئیات بیشتر و دقیقتر، به مستندات توزیع خود و دستورات مربوطه مراجعه کنید.
خلاصه
به طور کلی می توانیم بگوییم که دستور rm برای حذف فایل و دستور rmdir برای حذف دایرکتوری های خالی در سیستم عامل لینوکس مورد استفاده قرار می گیرند. فایل های حذف شده با این دستورها به راحتی قابلیت بازیابی ندارند. به همین دلیل در صورت استفاده از این دستورها باید از اطلاعات مهم خود نسخه پشتیبانی تهیه کنید. همچنین باید داده ها را با احتیاط حذف کنید. برای ویرایش فایلهای متنی نیز از دستور gedit میتوانید استفاده کنید که در محتوای "دستور gedit در لینوکس" میتوانید کامل با این دستور و نحوه استفاده از آن آشنا شوید.
سوالات متداول
آیا دستور rmقادر است فایلها را به سطل زباله منتقل کند یا فقط آنها را حذف میکند؟
این دستور در لینوکس فایلها و دایرکتوریها را به صورت دائمی حذف میکند و آنها را به سطل زباله ((Trash منتقل نمیکند. به طور پیشفرض، وقتی از دستور rm استفاده میکنید، فایلها به طور غیرقابل بازگشت حذف میشوند و از دسترس خارج میشوند؛ اما، در برخی توزیعها و محیطهای گرافیکی لینوکس، مانند GNOME و KDE پوشههای سطل زباله وجود دارند که به عنوان محلی برای ذخیره فایلها و دایرکتوریهای حذف شده عمل میکنند. این پوشهها به عنوان یک لایه محافظ برای جلوگیری از حذف غیرقابل بازگشت فایلها توسط دستور "rm "عمل میکنند. در این توزیعها، در حالت پیشفرض، دستور rmفایلها را به طور مستقیم حذف میکند و به سطل زباله منتقل نمیکند. اما شما میتوانید از پارامترها و تنظیمات مربوطه استفاده کنید تا فایلها را به سطل زباله بیاندازید یا اینکه خودتان دستوراتی برای انتقال فایلها به سطل زباله بنویسید. به عنوان مثال، در محیط گرافیکی GNOME میتوانید از دستور ""gvfs-trash استفاده کنید تا فایلها را به سطل زباله ارسال کنید.
آیا میتوانیم از دستور rm در محیط گرافیکی KDE استفاده کنیم؟
بله، میتوانید از دستور ""rm در محیط گرافیکی KDE نیز استفاده کنید. این دستور قابل استفاده در ترمینال ((Terminal است و به صورت پیشفرض در تمامی محیطهای گرافیکی لینوکس، از جمله KDE در دسترس است. برای استفاده از دستور "" rm در KDE، میتوانید محیط ترمینال یا اجرای دستورات خط فرمان را باز کنید. در KDE، معمولاً میتوانید ترمینال را با استفاده از برنامه "" Konsole یا ""Terminal پیدا کنید. میتوانید این برنامه را از منوی برنامهها یا با جستجو در منوی استارت اجرا کنید. پس از باز شدن ترمینال، میتوانید دستور "rm "را به همان شکلی که قبلاً توضیح داده شد، استفاده کنید. به عنوان مثال، برای حذف فایل "myfile.txt" میتوانید دستور زیر را وارد کنید: rm myfile.txt همچنین، برای حذف دایرکتوری و محتویات آن نیز میتوانید از دستور ""rm با پارامتر "r-" استفاده کنید. مثال: rm -r mydir
آیا دستور rm قابل استفاده برای حذف فایلها در سیستم عاملهای دیگر نیز است؟
بله، دستور "rm " برای حذف فایلها قابل استفاده در بسیاری از سیستمعاملها، از جمله لینوکس، macOS و BSD است. این دستور در این سیستمعاملها به صورت مشابه عمل میکند و معمولاً دارای پارامترهای مشابهی است. در سیستمعاملهای مبتنی بر یونیکس ((Unix-based، مانند لینوکس و BSD دستور "rm " برای حذف فایلها و دایرکتوریها استفاده میشود. ساختار و کاربرد این دستور در قسمت قبلی توضیح داده شده است. در macOS نیز، که یک سیستمعامل مبتنی بر یونیکس است، دستور ""rm برای حذف فایلها و دایرکتوریها استفاده میشود. علاوه بر پارامترهای استاندارد، میتوان از پارامتر "-P" استفاده کرد تا فایلها را به صورت امن حذف کند. همچنین، بسیاری از سیستمعاملهای دیگر نیز دستور ""rm را برای حذف فایلها ارائه میدهند. با این حال، پارامترهای دستور "rm "ممکن است در هر سیستمعامل متفاوت باشد.