Situatie
Fișierele de log generate de IIS (C:\inetpub\logs\LogFiles) și directoarele temporare tind să ocupe zeci de gigabiți de pe partiția de sistem în doar câteva luni. Acest script identifică și șterge fișierele de log mai vechi de o anumită perioadă de timp.
Solutie
Scriptul PowerShell (Clean-IISAndTempLogs.ps1)
# — CONFIGURARE —
$zilePazit = 30 # Șterge fișierele mai vechi de 30 de zile
$caiLogs = @(
“C:\inetpub\logs\LogFiles”,
“C:\Windows\Temp”
)
# ——————-
$dataLimita = (Get-Date).AddDays(-$zilePazit)
foreach ($cale in $caiLogs) {
if (Test-Path $cale) {
Write-Host “Se curăță locația: $cale …” -ForegroundColor Cyan
$fisiereVechi = Get-ChildItem -Path $cale -Recurse -File -ErrorAction SilentlyContinue |
Where-Object { $_.LastWriteTime -lt $dataLimita }
if ($fisiereVechi) {
$fisiereVechi | Remove-Item -Force -ErrorAction SilentlyContinue
Write-Host “✅ S-au șters $($fisiereVechi.Count) fișiere mai vechi de $zilePazit zile.” -ForegroundColor Green
} else {
Write-Host “ℹ️ Nu există fișiere vechi de șters în această locație.” -ForegroundColor Yellow
}
}
}
Ce trebuie să modifici în script?
-
$zilePazit = 30-> Păstrează log-urile din ultimele 30 de zile pentru troubleshooting și le șterge pe cele mai vechi. -
$caiLogs = @(...)-> Poți adăuga și alte căi de directoare temporare (ex. directoare de aplicații sau exporturi vechi).
Leave A Comment?