PowerShell ile log dosyalarini arsivleme (tr-TR)

Contributor

Windows Server işletim sistemlerinde IIS, exchange gibi log dosyalarını düzenli geriye dönük arsivlemek gereken hem yasal olarak hemde kaynak kullanımı tasarufu kapsamında örnek scripti kullanabilirsiniz.

 

7 gün sonra geriye dönük dosyları arsivleyen scriptdeki $LastWrite=(get-date).AddDays(-7).ToString("MM/dd/yyyy") 7 değerini değiştirerek geriye dönük tutulacak arsiv gün değerini isteğinize uygun güncelleyebilirsiniz.

 

İlgili scripti task scheduler üzerinde yapılandırarak düzenli bir şekilde kullanabilirsiniz.

 

 

$LogFolder=“Clog_Dosyasi” 
$Arcfolder=ClogsArsiv_Log_Dosyasi” 
$LastWrite=(get-date).AddDays(-7).ToString(MMddyyyy) 
If ($Logs = get-childitem $LogFolder  Where-Object {$_.LastWriteTime -le $LastWrite -and !($_.PSIsContainer)}  sort-object LastWriteTime) 
{ 
foreach ($L in $Logs) 
{ 
$FullName=$L.FullName 
$WMIFileName= $FullName.Replace(, ) 
$WMIQuery = Get-WmiObject -Query “SELECT  FROM CIM_DataFile WHERE Name='$WMIFileName'“ 
If ($WMIQuery.Compress()) {Write-Host $FullName Arsivleme basarili.-ForegroundColor Green} 
else {Write-Host $FullName Arsivleme hatasi. -ForegroundColor Red}

 

 

 

0 Replies