Jump to content

Powershell Komutları Ile Dosya Veya Klasör Silmek


alcalmc
 Share

Recommended Posts

Powershell komutları ile dosya veya Klasör silmek (sordum.net)

Powershell birçok script ve yazılım kodlayıcısının en sevmediği script dilidir , gel gelelim Microsoftun dayatmacı yaklaşımı sebebi ile bazı durumlarda mecburen kullanıyoruz. yazılarımızda zaman zaman Powershell ile ilgili örnekler paylaşıyoruz bu örneklerden bazılarına yazının sonunda yeralan linklerden ulaşabilirsiniz. Her script dilinde temel işlemlerden bir taneside dosya veya klasör silmektir , mesela bir işyerinde Log dosyalarının tutulduğu klasörlerin belirli aralıklarla temizlenmesi gerekebilir bunun için bir script yazıp zamanlanmış görevlerden belirli aralıklarla çalıştırıp silme işlemini otomatik hale getirebiliriz. Peki ama Powershell komutları ile dosya veya klasör silme işlemi nasıl yapılır ?

Spoiler

Powershell komutları ile dosya veya Klasör silmek

Velociraptor | 26/05/2024 |

Powershell birçok script ve yazılım kodlayıcısının en sevmediği script dilidir , gel gelelim Microsoftun dayatmacı yaklaşımı sebebi ile bazı durumlarda mecburen kullanıyoruz. yazılarımızda zaman zaman Powershell ile ilgili örnekler paylaşıyoruz bu örneklerden bazılarına yazının sonunda yeralan linklerden ulaşabilirsiniz. Her script dilinde temel işlemlerden bir taneside dosya veya klasör silmektir , mesela bir işyerinde Log dosyalarının tutulduğu klasörlerin belirli aralıklarla temizlenmesi gerekebilir bunun için bir script yazıp zamanlanmış görevlerden belirli aralıklarla çalıştırıp silme işlemini otomatik hale getirebiliriz. Peki ama Powershell komutları ile dosya veya klasör silme işlemi nasıl yapılır ?

image.png.9252825118ed4082a976222b78cbddbf.png

Powershell komutları ile Dosya silin

Aşağıda örnek olması açısında C:\ dizinine sordum isminde bir klasör oluşturdum ve içerisine a.txt, b.txt , c.txt isminde üç adet dosya ekledim şimdi amacımız "C:\sordum\a.txt" dosyasını Powershell komutları ile sildirmek bunun için :

1. Aramaya Powershell yazıp çıkan Powershell ikonuna sağ tıklayıp yönetici olarak çalıştır diyoruz. uygulayacağımız komut aşağıdaki şekilde olacaktır , ilk komut açıklamadır.

2 remove-item C:\sordum\a.txt

C:\sordum\a.txt dosyası anında silindi , silinen dosyanın Geri dönüşüm kutusuna gitmediğini aklımızda bulunduralım.

image.png.4d4380e3847fc15f0bb0dc0ead2e86c0.png

Powershell komutları ile birden fazla dosyayı aynı anda silin

Eğer birden fazla dosyayı aynı anda silmek istersek bu durumda aşağıdaki komutu kullanmamız gerekecektir

1 remove-item C:\sordum\a.txt, C:\sordum\b.txt, C:\sordum\c.txt

Komut uygulanır uygulanmaz Sordum klasörü içerisinde .txt dosyalarında komutla belirlediklerimiz anında silinecektir.

image.png.e307358903fe0a6371c9d3358f8ad1c3.png

Powershell komutları ile belirli uzantılardaki dosyaları silin

Diyelimki Sordum Klasörünün içerisinde birçok dosya türü mevcut , bazıları excel bazıları word bazıları .txt dosyaları biz klasör içerisindeki dosya türlerinden sadece .xlsx olanların silinmesini istiyoruz bu durumda komutu şu şekilde oluşturmamız gerekir.

1 remove-item C:\sordum\*.xlsx

Komut uygulandığında sordum klasörü içerisindeki tüm .xlsx dosyaları silinecektir.

image.png.7e84ea237f9cc73e1e9f736f3526dea3.png

Peki ama C dizininde yeralan sordum klasörünü komple silmeye kalksaydık hangi komutu kullanacaktık ?

Powershell komutları ile Klasör silin

Powershell komutları ile Klasör silmek için aşağıdaki komutlardan faydalanabiliriz , ilk komut açıklama ikinci komut uygulamadır.

1 Remove-Item .\foldertodelete -Force -Recurse
2 Remove-Item C:\sordum -Force -Recurse

Aslında komut olarak "Remove-Item C:\sordum" Komutunu da kullanabilirdim fakat bu durumda bizden onay isteyecekti o nedenle - Force ve - Recurse parametrelerini kullandık.

image.png.a3c6b831e0d64c7cbcafb1e502aa3389.png

Birden fazla klasör silmek için aşağıdaki gibi bir kod kullanılabilir.

1 Remove-Item -Path "C:\sordum\x", "C:\sordum\y", "C:\sordum\z" -Force -Recurse

-include : silmek istediğiniz dosya veya klasörün isminin içermesi gereken kelimenin bir bölümünü belirtmenize olanak tanır. Burada dikkat edilmesi gereken önemli nokta, verilen adı içeren hem dosya hem de klasörlerin silinmesidir. Örneğin, isminde test sözcüğü geçen tüm klasör ve dosyaları aşağıdaki kod ile silebilirsiniz.

1 Remove-Item -Path "C:\sordum\*" -Include "*test*" -Force -Recurse

Kod uygulandığında aşağıdaki dosya ve klasörler silinecektir.

image.png.c0ba29d5c8a1d46b029ea764ad02f153.png

-exclude : İsminde belirli bir kelime bulunan klasörler hariç, diğer tüm içerikleri silebiliriz, filtre hem dosyalarda hem de klasörlerde geçerlidir. Mesela isminde test kelimesi geçen dosya ve klasörler hariç diğerlerini sildirmek için gerekli kod aşağıda.

1 Remove-Item -Path "C:\sordum\*" -Exclude "*test*" -Force -Recurse

Kod uygulandığında aşağıdaki dosya ve klasörler silinecektir.

image.png.8f26459640f10438acd2b6acbd5bcd4c.png

Belirli tarihten eski dosyaları sildirtin

30 günden daha eski olan tüm klasörleri sildiren kod.

1 $dateTime = (Get-Date).AddDays(-30)
4 Get-ChildItem -Path $Path -Recurse -Directory | Where-Object { $_.LastWriteTime -lt $dateTime } | Remove-Item -Recurse -WhatIf

Üstte uygulanan tüm komutlarda eğer dosya veya klasör bulunamazssa Powershell komutu hata verecektir bu hata ekrana genellikle kırmızı yazı ile yazdırılır.

- Powershell ile windows defendere dışlama eklemek Burada

- Powershell ile windows özelliklerini açıp kapatmak Burada

- Powershell Yetki sorunlarını çözelim Burada

- Powershell komutu ile Sürücü harfi değiştirelim Burada

- Powershell de Çevre değişkeni kullanımı Burada

  • Like 1
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...