Asigurați-vă că faceți backup pentru toate fișierele.
Creați un fișier numit cleanmx.ps1 (sau orice altceva)
si ruleaza-l:
.\cleanmx.ps1
Fișierul conține asta:
# Setați politica de execuție dacă nu este setată
$ExecutionPolicy = Obține-ExecutionPolicy
if ($ExecutionPolicy -ne „RemoteSigned”) {
Set-ExecutionPolicy RemoteSigned -Force
}
# Jurnalele de curățare mai vechi decât setul de zile în cifre
$zile = 1
# Calea jurnalelor pe care doriți să le curățați
$IISLogPath = "C:\inetpub\logs\LogFiles\"
$ExchangeLoggingPath = "C:\Program Files\Microsoft\Exchange Server\V15\Logging\"
$ETLLoggingPath = "C:\Program Files\Microsoft\Exchange Server\V15\Bin\Search\Ceres\Diagnostics\ETLTraces\"
$ETLLoggingPath2 = "C:\Program Files\Microsoft\Exchange Server\V15\Bin\Search\Ceres\Diagnostics\Logs\"
# Curățați bustenii
Funcția CleanLogfiles($TargetFolder) {
Write-Host -Debug -ForegroundColor Galben -BackgroundColor Cyan $TargetFolder
if (Calea de testare $TargetFolder) {
$Now = Get-Date
$LastWrite = $Now.AddDays(-$zile)
$Files = Get-ChildItem $TargetFolder -Recurse | Unde-Obiect { $_.Nume -cum ar fi "*.log" -sau $_.Nume -cum ar fi "*.blg" -sau $_.Nume -cum ar fi "*.etl" } | Unde-Obiect { $_.lastWriteTime -le „$lastwrite” } | Select-Object FullName
foreach ($File în $Files) {
$FullFileName = $File.FullName
Write-Host „Ștergerea fișierului $FullFileName” -ForegroundColor „galben”;
Eliminați-element $FullFileName -ErrorAction SilentlyContinue | out-null
}
}
Altfel {
Write-Host "Dosarul $TargetFolder nu există! Verificați calea folderului!" -Culoarea primului plan „roșu”
}
}
CleanLogfiles($IISLogPath)
CleanLogfiles($ExchangeLoggingPath)
CleanLogfiles($ETLLoggingPath)
CleanLogfiles($ETLLoggingPath2)