# Set the maximum allowed age of Revit local files $FileAllowedAge = (Get-Date).AddMonths(-1) # Build all Revit local paths $RevitLocalPaths = @() ForEach ( $userProfile in (Get-ChildItem -Path "${Env:SystemDrive}\Users" | Where-Object { $_.PSIsContainer }) ) { If ( Test-Path "${userProfile}\Documents" ) { $RevitLocalPaths.Add("${userProfile}\Documents") } If ( Test-Path "${userProfile}\Documents\Revit Locals" ) { $RevitLocalPaths.Add("${userProfile}\Documents\Revit Locals") } } ForEach ( $path in $RevitLocalPaths ) { $RevitFiles = Get-ChildItem -Path "${path}\*.*" -Filter '*.rvt' | Where-Object {$_.LastWriteTime -lt $FileAllowedAge} If ( $RevitFiles ) { ForEach ($revitfile in $RevitFiles) { $parentDir = $revitfile.DirectoryName $baseName = $revitfile.BaseName $BackupDir = "${parentDir}\${basename}_backup" If ( (Test-Path "${revitfile}") -and (Test-Path "${BackupDir}")) { LogMsg "Deleting ""${revitfile}"" and backup directory ""${BackupDir}""" Remove-Item "${revitfile}" -Force -ErrorAction SilentlyContinue Remove-Item "${BackupDir}" -Recurse -ErrorAction SilentlyContinue } } } }