ÇözümPark'a hoş geldiniz. Oturum Aç | Üye Ol
 
Ana Sayfa Makale Video Forum Dosyalar Etkinlik Hizmetlerimiz Biz Kimiz

PowerShell ile Belirli Tarihten Önceki "KLASÖRLERI" silme

Son Mesajınız 01-11-2019, 16:25 YasinSultanoglu tarafından gönderildi. 2 yanıt.
Mesajları Sırala: Önceki Sonraki
  •  01-11-2019, 9:58 541004

    PowerShell ile Belirli Tarihten Önceki "KLASÖRLERI" silme

    Merhaba,

     

    Powershell ile 30 günden eski KLASÖRLERİ ve tabiki alt klasörlerini de silmek istiyorum. 

     

    Yapı Şöyle : Sunucunu D: sürücüsünde d:\taramalar, d:\genelpaylaşim ve d:\muhasebe olarak 3 ayrı klasörüm var. bunları her akşam \\freenas\Serveryedek\$date adı altında robocopy ile kopyalamaktayım. Bu 3 klasör üçerisinde çok eski ve yeni dosyalar var.

     

    Freenas içerisinde oluşturulan günlük klasörlerin 30 günden eskilerini sildirmek istiyorum.

     

    Nasıl bir komut ile yaptırabilirim.

  •  01-11-2019, 12:38 541020 Cevap 541004

    Cevap : PowerShell ile Belirli Tarihten Önceki "KLASÖRLERI" silme

    Merhaba Yasin Bey,

     

    Aşağıdaki PS ile 30 günden eskilerini sildirme işlemini gerçekleştirebilirsiniz.

     $Path değişkeni içerisindeki $date değerini kendi tarih formatınızda yazdırılması gerekli.

     

    Set-Executionpolicy RemoteSigned
    $days=30

    $Path="\\freenas\Serveryedek\$date"
    Function CleanLogfiles($TargetFolder)
    {
    write-host -debug -ForegroundColor Yellow -BackgroundColor Cyan $TargetFolder

    if (Test-Path $TargetFolder) {
    $Now = Get-Date
    $LastWrite = $Now.AddDays(-$days)
    $Files = Get-ChildItem $TargetFolder -Recurse | where {$_.lastWriteTime -le "$lastwrite"} | Select-Object FullName
    foreach ($File in $Files)
    {
    $FullFileName = $File.FullName
    Write-Host "Deleting file $FullFileName" -ForegroundColor "yellow";
    Remove-Item $FullFileName -ErrorAction SilentlyContinue | out-null
    }
    }
    Else {
    Write-Host "The folder $TargetFolder doesn't exist! Check the folder path!" -ForegroundColor "red"
    }
    }
    CleanLogfiles($Path)

     

    Bilginize.


    MVP - MCSE - MSCA - MCPS
  •  01-11-2019, 16:25 541036 Cevap 541020

    Cevap : PowerShell ile Belirli Tarihten Önceki "KLASÖRLERI" silme

    Cevabınız için teşekkür ederim.

     

    Göndermiş olduğunuz kodu kopyalarak yedekleme dosyama ekledim. Fakat istediğim silme işlemini yapamadı.

    1. Silme işlemi için her eski klasör için onay istedi.
    2.  Klasörün içerisindeki, örneğin 20 gün eski klasörleri sil dediysem o klasördeki 20 gün eskileri siliyor. Yenilerini Bırakıyor.
    3.  Silme işlemini uyguladığı klasörün değiştirme tarihini bugün yapıyor.

     

RSS haberlerini XML olarak görüntüle