- Konum
- BERTUNA
-
- Üyelik Tarihi
- 2 Haz 2020
-
- Mesajlar
- 5,358
-
- MFC Puanı
- 16,420

Kabuk tercihinize bağlı olarak kullanabileceğiniz iki teknik, MS-DOS Komut İstemi veya PowerShell.
PowerShell 2.sürüm'e Göre :
Kod:
Get-ChildItem –Path “C:\Backups” –Recurse | Where-Object{$_.CreationTime –lt (Get-Date).AddDays(-5)} | Remove-Item
PowerShell 3.sürüm'e Göre :
Kod:
Get-ChildItem –Path “C:\Backups” –Recurse | Where-Object CreationTime –lt (Get-Date).AddDays(-5) | Remove-Item
Açıklama
- Öncelikle Path C:\Backups'ta FileInfo ve DirectoryInfo nesnelerini alıyoruz.
- FileInfo ve DirectoryInfo nesnelerinin her ikisi de bir CreationTime özelliği içerir, böylece onu kullanarak koleksiyonu filtreleyebiliriz.
- –lt (küçüktür) operatörü daha sonra nesnelerin CreationTime özelliğini Get-Date (geçerli tarih) 5 gün çıkarma ile karşılaştırmak için kullanılır.
- Bu daha sonra, 5 günden daha uzun bir süre önce oluşturulmuş ve Remove-Item'e geçirdiğimiz bir nesneler koleksiyonuyla bizi bırakır.
Neyin kaldırılacağını görmek için –WhatIf parametresini kullanabilirsiniz:
Kod:
Get-ChildItem –Path “C:\Backups” –Recurse | Where-Object CreationTime –lt (Get-Date).AddDays(-5) | Remove-Item –WhatIf

MS-DOS Komut İstemi
PowerShell yöntemlerinden birini kullanmanızı önersek de, powershell ayrıntılarına girmeden bunu komut isteminden de yapabilirsiniz.
Kod:
forfiles -p "C:\Yedeklemeler" -s -m *.* -d -5 -c "cmd /c del @path"
Profesyonel İpucu
Hangi dosyaların silineceğini görmek için echo'yu kullanabilirsiniz.
Kod:
forfiles -p "C:\Yedeklemeler" -s -m *.* -d -5 -c "cmd /c echo @dosya.uzantısı"

Kaynak Çeviri :
HTML:
https://www.howtogeek.com/