اطلاعیه

بستن
هنوز اعلام نشده است.

دستور rm -rf برای حذف فایل ها و دایرکتوری ها در لینوکس

بستن
X
  • فیلتر کردن
  • زمان
  • نمایش
پاک کردن همه
پست های جدید

  • دستور rm -rf برای حذف فایل ها و دایرکتوری ها در لینوکس

    دستور rm یکی از ابزارهای command line در UNIX و Linux میباشد که فایل ها و دایرکتوری های موجود در سیستم های لینوکس را حذف میکند. در این مقاله ما به شما توضیح خواهیم داد که دستور "rm -rf" چه کاری در لینوکس انجام میدهد.


    علاوه بر این، ما قصد داریم تعداد کمی مثال های مورد استفاده از حذف کردن یک فایل، حذف کردن دایرکتوری, حذف کردن چندین فایل یا دایرکتوری ها، گرفتن تاییدیه هنگام حذف کردن، حذف فایل ها بصورت recursive و الزام برای عملیات حذف این فایلها را به شما شرح دهیم.

    دستور rm یکی از دستورات پرکاربرد و خطرناک سیستم های لینوکسی میباشد، که در ادامه این مقاله به آنها میپردازیم.



    نحوه حذف کردن یک فایل در Linux

    به صورت پیش فرض، دستور rm فقط فایل یا فایل های مشخص شده توسط شما را بلافاصله در command line حذف میکند و قادر به حذف کردن دایرکتوری ها نمی باشد.
    کد PHP:
    [root@localhost ~]# rm linuxzone.txt
    [root@localhost ~]# rm linuxzone_file/
    rmcannot remove ‘linuxzone_file/Is a directory
    [root@localhost ~]
    برای دیدن سایز بزرگ روی عکس کلیک کنید  نام: rm-command-example-1.PNG مشاهده: 1 حجم: 10.9 کیلو بایت





    نحوه حذف کردن چندین فایل در Linux

    برای حذف چندین فایل در یک لحظه، نام فایل هایتان را یک به یک وارد کرده (برای مثال file1 file2) یا از یک pattern (الگو) برای حذف چندین فایل (برای مثال فایل هایی که انتهای آنها با .txt تمام میشوند) با یک حرکت استفاده کنید.
    کد PHP:
    [root@localhost linux-zone]# rm mohammad.txt maryam.txt
    [root@localhost linux-zone]# rm *.txt 
    برای دیدن سایز بزرگ روی عکس کلیک کنید  نام: remove multiple file in linux-2.PNG مشاهده: 1 حجم: 24.4 کیلو بایت





    نحوه حذف یک دایرکتوری در Linux

    برای حذف یک دایرکتوری، شما میتوانید از سوئیچ های "-r" یا "-R" برای حذف یک دایرکتوری و زیرشاخه هایش (به همراه محتوای داخل آن) استفاده کنید.
    کد PHP:
    [root@localhost linux-zone]# rm habili_doc/
    rmcannot remove ‘habili_doc/Is a directory
    [root@localhost linux-zone]#
    [root@localhost linux-zone]# rm -R habili_doc/ 
    برای دیدن سایز بزرگ روی عکس کلیک کنید  نام: Remove-Directory-in-Linux-3.png مشاهده: 1 حجم: 11.0 کیلو بایت




    نحوه تاییدیه گرفتن قبل از حذف فایل ها

    برای گرفتن تاییدیه به هنگام حذف یک فایل، همانند زیر از آپشن "-i" استفاده کنید.
    کد PHP:
    # rm -i maryam.txt 
    برای دیدن سایز بزرگ روی عکس کلیک کنید  نام: Remove-Files-with-Confirmation-4.png مشاهده: 1 حجم: 8.9 کیلو بایت





    نحوه تاییدیه گرفتن هنگام حذف دایرکتوری ها

    برای گرفتن تاییدیه هنگام حذف یک دایرکتوری به همراه sub-directory های آن، همانند زیر از آپشن "-R" و "-i" استفاده کنید.
    کد PHP:
    # rm -Ri linux-zone/ 
    برای دیدن سایز بزرگ روی عکس کلیک کنید  نام: Remove-Directory-with-Confirmation-5.png مشاهده: 1 حجم: 11.5 کیلو بایت





    نحوه حذف حتمی فایل یا دایرکتوری ها بدون پرسش و نیاز به تایید

    برای force کردن عملیات حذف یک دایرکتوری، شما میتوانید از آپشن "-f" برای force کردن عملیات حذف و بدون تاییدیه گرفتن استفاده کنید. برای مثال اگر یک فایلی غیرقابل خواندن باشد، rm از شما تاییدیه میخواهد که این فایل را حذف کند یا خیر، که برای جلوگیری کردن از این کار کافیست از آپشن "-f" در دستور زیر استفاده کنید.
    کد PHP:
    # rm -f habili.txt 
    هنگامیکه شما آپشن های "-r" و "-f" را با هم ترکیب کنید، به این معنی میباشد که یک دایرکتوری را به همراه تمام زیر شاخه هایش و به صورت force (بدون تاییدیه گرفتن) حذف میکند.
    کد PHP:
    # rm -rf linuxzone_file/ 
    برای دیدن سایز بزرگ روی عکس کلیک کنید  نام: Force-Deletion-of-File-and-Directory-6.png مشاهده: 1 حجم: 4.5 کیلو بایت





    نحوه نمایش اطلاعات در حین حذف شدن

    برای نمایش اطلاعات بیشتر هنگام حذف یک فایل یا دایرکتوری، از آپشن "-v" را برای نمایش کارها یا اتفاقات انجام شده، در خروجی استفاده کنید.
    کد PHP:
    # rm -rv linux-zone/ 
    برای دیدن سایز بزرگ روی عکس کلیک کنید  نام: Show-Verbose-During-Rm-Deletion-7.png مشاهده: 1 حجم: 9.2 کیلو بایت





    یاد گرفتن دستور rm -Rf /

    شما همیشه باید به خاطر بسپارید که "rm -rf" یکی از دستورات خطرناک میباشد، که شما میتوانید آنرا روی یک سیستم لینوکسی مخصوصا با یوزر root اجرا نکنید. دستور زیر همه چیز را در پارتیشن root (/) حذف خواهد کرد و مجبور میشوید از اول سیستم عامل را نصب و راه اندازی کنید. :)
    کد PHP:
    # rm -rf  / 


    ایجاد Alias برای دستور rm در Linux

    به عنوان یک اقدام امنیتی، شما میتوانید rm را طوری تنظیم کنید که همیشه از شما برای عملیات حذف تاییدیه بگیرد، هر زمانیکه شما بخواهید یک فایل یا دایرکتوری را حذف کنید، از آپشن "-i" استفاده میکند. برای دائمی کردن این دستور alias زیر را به فایل $HOME/.bashrc اضافه کنید.
    کد PHP:
    alias rm="rm -i" 

    تغییرات را ذخیره کنید و از فایل خارج شوید. سپس فایل .bashrc خودتان را همانند زیر source کنید یا اینکه یک ترمینال جدید برای اعمال شدن آخرین تغییرات باز کنید.
    کد PHP:
    # source $HOME/.bashrc 
    وقتی که شما دستور rm را اجرا میکنید، به طور پیش فرض با آپشن "-i" اجرا خواهد شد. (در صورت استفاده از آپشن "-f" این تنظیمات overwrite خواهند شد)
    کد PHP:
    # rm maryam.txt
    # rm mohammad.txt 


    آیا rm یک فایل را حذف میکند؟

    در واقع، دستور rm هرگز یک فایل را حذف نخواهد کرد، بلکه آنرا از روی دیسک unlink میکند، اما هنوز دیتا بر روی دیسک میباشد و میتوانید با ابزارهایی مانند PhotoRec, Scalpel یا Foremost آنرا recovery کنید.

    اگر شما واقعا میخواهید دایرکتوری یا فایلی را به صورت دائمی حذف کنید، شما میتوانید از ابزار کامند لاینی shred برای overwrite یک فایل به نحوی که محتوای آن مخفی شود، استفاده کنید.

    در این مقاله، ما با استفاده ا ز برخی مثالهای واقعی و مفید دستور rm را شرح دادیم، همچنین در مورد اینکه دستور rm چه کارهایی در لینوکس میتواند انجام دهد را شرح دادیم. فراموش نکنید نظرات ارزشمند خود را با ما درمیان بگذارید.
    ویرایش توسط Habili : http://linux-zone.org/forums/member/5-habili در ساعت 07-10-2018, 09:00 PM
پردازش ...
X
کانال تلگرام منطقه لینوکسی ها