← Anasayfa

Geriye Dönük (Log / Eski) Dosyaları Düzenli Otomatik Sildirme

Scripting, Dosya YönetimiPowerShell

Bir çok programın ve sistemin C diskinizde oluşturduğu yığınla arıza (.log) dosyası vardır. IIS Sunucuları ayda 20 GB lık anlamsız düz metin kütükleri çıkarırlar. Şirkette bunları disk tükenmesin diye haftada bir siler dururuz.

Bunu mükemmel ve temizleyecek script parçacığımız ise borulama yöntemidir.

30 Gün Öncesine Ölüm (Remove-Item)

$HedefKutu = "C:\inetpub\logs\LogFiles" 
$YasamSuresi = 30 
$Kriter = (Get-Date).AddDays(-$YasamSuresi)

Get-ChildItem -Path $HedefKutu -Recurse -File | Where-Object { $_.LastWriteTime -lt $Kriter } | Remove-Item -Force

Bu parça; belirlediğiniz dosyanın derinine iner (File), ve o tarih süzgecine girdiği an eski kalmışsa (LessThan Kriter) karşısına acımadan Remove gücünü uygular. Bu ps1 dosyasını Task Scheduler (Görev Zamanlayıcı) ile birleştirirseniz o günden sonra ne zaman diskiniz patlayacak kaygısından uzakta uyuyuşa geçebilirsiniz.