'Объявляем переменные Dim BackupFolder 'Путь до каталог, куда складываем архивные копии Dim OldDays 'Количество дней хранения файлов Dim Fso 'Переменная для доступа к файловой системе Set Fso = CreateObject("Scripting.FileSystemObject") BackupFolder = "R:\TEMP\User" OldDays = 2 '************************************************************************************************** '* Функция поиска и удаления устаревших файлов и пустых каталогов '************************************************************************************************** Sub DeleteOldFiles(ByVal ValBuFld, ByVal ValOldDays) Wscript.echo ValBuFld & " " & ValOldDays & " days" For Each SubFld2 In Fso.GetFolder(ValBuFld).SubFolders 'Создаём список подкаталогов Call DeleteOldFiles(SubFld2, ValOldDays) For Each SubFile2 In SubFld2.Files 'Составляем список файлов в каталоге Age2 = DateDiff("D",Now(),SubFile2.DateLastModified) 'с датой модификации файла If Abs(Age2)>ValOldDays Then Wscript.echo "Delete file " & SubFile2 Fso.DeleteFile(SubFile2) 'Удаляем старые файлы End If Next If SubFld2.Files.Count = 0 And SubFld2.SubFolders.Count = 0 Then 'Если количество файлов в каталоге Wscript.echo "Delete dir " & SubFld2 Fso.DeleteFolder(SubFld2) 'равно нулю, то удаляем каталог End If Next End Sub '************************************************************************************************** Call DeleteOldFiles(BackupFolder, OldDays) |