Eğer disk boyutu x den küçük ise şunu yap Powershell
Eğer C diski x boyutundan küçük ise şu dosyaları sil Powershell. Yani bir nevi Powershell ile koşullu otomatik dosya sildirme. Bunu bir schedular task üzerine atayarak eğer diskte boş yer kalmamışsa otomatik olarak belirttiğimiz alanları sildirebiliriz.
Geçen gün ne zamandır aklımda olan bir script hazırlayayım dedim ve oturup 2 dakikada yazdım. Çok profosyonel olmasa da iş görür ve isteyen geliştirebilir.
Bildiğiniz üzere C diski genel olarak Windows işletim sisteminin kurulduğu diskdir. Bu diskte yer kalmaması sistemin kararlı bir şekilde çalışmasına engel olur ve bir çok sistem process’i düzgün çalışamaz hatta bilgisayara login olunamaz.
Bunun önüne geçmek için bilgisayar veya sunucuda bu scripti düzenleyebilir ve C alanında scriptte belirteceğiniz alandan daha az yer kalmışssa Else yapısında belirteceğiniz işlemleri yaptırabilirsiniz.
Burası Base komut
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
#Bu script C drive disk boyutunu kontrol eder ve disk boyutu şu kadardan küçük ise şunu yap üzerine dayalı basit bir scripttir. # $diskboyutukucukse = "" belirteceğiniz alan GB cinsinden olacak ve şu kadar GB'dan küçükse Else yapısındaki kodu çalıştıracak. $diskboyutusundankucukse = 5 $freespacegetir = Get-WmiObject -Class Win32_LogicalDisk| ? {$_. DeviceID -eq "C:"} | select @{name="Freespace";expression={$_.FreeSpace /1GB}} if ($freespacegetir.Freespace -gt $diskboyutusundankucukse) { Write-Host -ForegroundColor Green "Diskte yer var her şey ok görünüyor." } Else {Write-Host -ForegroundColor Yellow "Diskte yer yok belirteceğin dizindeki dosyalar silinebilir"} |
Powershell ile otomatik olarak dosya sildirme
Örnek bir çalışma yapalım Eğer C:\ diskinde 5 GB dan az yer kalmışsa gidip c:\temp\temp3 alanındaki dosyaların tamamını silecek.
Önemli Not: Bu scripti çalıştırmadan önce mutlaka test edin ve sizin istediğiniz dosyaları siliyor olduğundan emin olun. Test ortamında çalıştıktan sonra production ortamında deneyin. Veri kaybetmeyi istemeyiz
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 |
#Bu script C drive disk boyutunu kontrol eder ve disk içerisinde boş alan 5 GB'dan küçük ise $silinecekkısım ve altındaki tüm dosya ve klasörleri siler. # $diskboyutukucukse = "" belirteceğiniz alan GB cinsinden olacak ve şu kadar GB'dan küçükse Else yapısındaki kodu çalıştıracak. $diskboyutusundankucukse = 5 $silinecekdizin = "C:\Temp\Temp3\*" $freespacegetir = Get-WmiObject -Class Win32_LogicalDisk| ? {$_. DeviceID -eq "C:"} | select @{name="Freespace";expression={$_.FreeSpace /1GB}} if ($freespacegetir.Freespace -gt $diskboyutusundankucukse) { Write-Host -ForegroundColor Green "Diskte yer var her şey ok görünüyor." } Else { Write-Host -ForegroundColor Yellow "Aşağıdaki Dosyalar Silindi" Get-ChildItem $silinecekdizin -Verbose $dosyalarsiliniyor = Remove-Item $silinecekdizin -Recurse } Pause |