Powershell Yardımı ile Belirli Bir Tarihten Önceki ve Belirli Dosya İsimlerine Göre Dosya Silme

#scriptin çalışacağı klasör.
$TargetFolder = "<Dizin>"
#seçeceği dosya türü
$filetype= "*.jpg"
#dosya adında IMG geçiyorsa bu dosyayı silmemesi için birinci değişken. Eğer silmesini istiyorsanız aşağıdaki if döngüsünün içerisinde geçen notmatch parametresini match olarak değiştirmeniz gerekir.
$namefilter_1="IMG"
#dosya adında DSC geçiyorsa bu dosyayı silmemesi için ikinci değişken değişken. Eğer silmesini istiyorsanız aşağıdaki if döngüsünün içerisinde geçen notmatch parametresini match olarak değiştirmeniz gerekir.
$namefilter_2="DSC"
#60 günden önce işlem görmüş (modified) olmuş dosyalar
$file_age = "60"
foreach ($i in Get-ChildItem $TargetFolder -recurse -include $filetype)
{
if (($i.Lastwritetime -lt($(Get-Date).AddDays(-$file_age)))) -and ($i.name -notmatch $namefilter_1) -and ($i.name -notmatch $namefilter_2))
{

#Silmeden önce kontrol için hangi dosyaların silineceğini txt dosyasına yazar. kontrolden sonra alttaki satırı başındaki’#’ işaretini kadırıp bu satırı da başına ‘#’ işareti koyarak disable edetmeniz gerekmektedir.
echo $i.Name $i.LastWriteTime >>"c:\delete.txt"
# -whatif parametetresi işlem yapılmadan silinecek dosyaların listesini göstermeyi sağlar. silme işlemi yapmaz. Dosyaların silinmesi için ‘whatif’ paremetresini de kaldırmanız gerekir.
#Remove-Item $i -force -whatif
}
}

Günün sonunda Scriptimiz;

$TargetFolder = "<Dizin>"
$filetype= "*.jpg"
$namefilter_1="IMG"
$namefilter_2="DSC"
$file_age = "60"
foreach ($i in Get-ChildItem $TargetFolder -recurse -include $filetype)
{
if (($i.Lastwritetime -lt($(Get-Date).AddDays(-$file_age)))) -and ($i.name -notmatch $namefilter_1) -and ($i.name -notmatch $namefilter_2))
{
echo $i.Name $i.LastWriteTime >>"c:\delete.txt"
Remove-Item $i -force -whatif
}
}

About Tansu Ekinci

Tansu Ekinci Biyografi 1980 yılının 24 Haziran’ ında Kırklareli’nin Babaeski ilçesinde doğmuştur. İlk öğretimini Hamdihelvacıoğlu İlkokulu’nda Ortaokul ve Lise eğitimini Kırklareli Anadolu Lisesi’ nde tamamladıktan sonra Ege Üniversitesi Ege Meslek Yüksek Okulu İşletmeciliği tamamlamış ve ardından İstanbul Üniversitesi İşletme Fakültesi’ ne Dikey Geçiş Sınavı ile geçerek işletme bölümünü bitirmiştir. Eğitim hayatı boyunca bir hobi olarak orta okul son sınıfta başlayan bilgisayar merakı giderek profeyonelleşmiş ve bir yaşam biçimi haline gelmiştir. Bu sırada çeşitli tüzel kişilere hizmet sunmuş ve bunun sayesinde bilgi işlem sektörünü kendisine meslek olarak seçmiştir. Bu sırada aldığı işletme eğitiminin de kendisine ileride yöneticilik için her zaman faydalı olacağının farkında olmuş ve bu konuyada önem vermiştir. Askerliğini 2005 yılında Muğla İli Ula ilçesinde Kısa Dönem Jandarma Çavuş olarak başarı ile tamamladıktan sonra Profesyonel iş hayatına atılmış ve ilk olarak bir yazılım şirketinde Yazılım Destek Departmanında işe başlamış ve burada mevcut yazılımın kullanımı ile ilgili olarak kullanıcı desteği ve eğitimi vermiştir. Ardından Netron Corparate Solutions şirketine Sistem Mühendisi olarak girmiş buradan da Marm Assistance A.Ş.‘ne geçiş yapmıştır. Ardından bu görevinden ayrılmış ve Limango Ltd.Şti isimli şirkette aynı pozisyonda çalışmaktadır. ޞu anda halen Limango Ltd.Şti. ‘de Senior Microsoft Sistem Mühendisi olarak çalışmaktadır…
This entry was posted in Server 2003, Server 2008, Server Sistemleri, Teknik, Windows 7, Windows 8, Windows XP and tagged , , , , , , , , , , , , , . Bookmark the permalink.

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.