Announcement

Collapse
No announcement yet.

نحوه ی حذف فایلها در دایرکتوری به جز یه فایل

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    نحوه ی حذف فایلها در دایرکتوری به جز یه فایل

    درود بر دوستان
    امیدوارم موضوع رو درست ذکر کرده باشم. من میخام تو یه دایرکتوری که هستم مثلا 15 فایل دارم میخام همه رو حذف کنم جز یه فایل
    دستورش رو به چه صورت تو ترمینال باید اجرا کنیم؟
    با تشکر
    Last edited by Habili; 02-09-2021, 12:21 AM.

    #2
    سلام دوست عزیز
    ساختار دستور به این صورت هستش، ابتدا وارد دایرکتوری مورد نظرتون بشید سپس به صورت زیر عمل کنید.
    PHP Code:
    rm !(file.txt)

    OR

    rm -!(file.txt
    به جای file.txt درون پرانتز نام فایلی که نمیخواهید حذف شود را بنویسید.
    Last edited by Habili; 10-28-2016, 01:21 PM.

    Comment


      #3
      من میخوام همه فایل هام رو جز یکی شون رو پاک کنم بعد این دستور رو میزنم کار نمیکنه پیغام -bash: !: event not found میده.
      اینستاگرام انجمن لینوکس ایران : https://www.instagram.com/iranlinuxforum

      Comment


        #4
        سلام از این دستور استفاده کنید. حتما قبلش برید داخل اون دایرکتوری که میخواهید فایل هاش رو حذف کنید و بعدش این دستور رو بزنید. (در مثال های زیر به جای file.txt شما نام فایل مورد نظرتون رو قرار بدید)
        PHP Code:
        find . ! -name 'file.txt' -type f -exec rm -{} + 
        اگر شما میخواهید همه فایل ها را به غیر از آنهایی که با پسوند .txt هستند، شما میتوانید از دستور زیر استفاده کنید :
        PHP Code:
        find . -type f ! -name "*.txt" -exec rm -rf {} \; 
        اگر میخواهید همه دایرکتوری ها با فایل های داخلش رو حذف کنید از دستور زیر استفاده کنید :
        PHP Code:
        find . ! -name "*.txt" -exec rm -{} \; 
        از این دستورات هم میتونید استفاده کنید :
        اگر نام فایل تون بدون فاصله (spacess) هست از این دستور استفاده کنید :
        PHP Code:
        ls grep -v file.txt xargs rm

        OR

        ls grep -.txt$| xargs rm 
        اگر داخل نام فایل تون فاصله داره از دستور زیر استفاده کنید :
        PHP Code:
        ls grep -v file.txt parallel rm 
        و همچنین این دستور رو هم میتونید استفاده کنید :
        PHP Code:
        find . -type f ! -name '*.txt' -delete 

        از این دستورات هم میتوانید استفاده کنید :
        PHP Code:
        rm -$(ls -"*.txt" 
        و اگر میخواهید همه فایل ها را به غیر از انهایی که پسوندشان txt و pdf هست رو حذف کنید از دستور زیر استفاده کنید :
        PHP Code:
        rm -$(ls -"*.txt" -"*.pdf" 
        Last edited by Habili; 02-09-2021, 12:21 AM.

        Comment

        Working...
        X