Microsoft предлагает скрипт на своем сайте .
Ниже приведена модифицированная версия, которую я использую для своих нужд.
Wscript.Echo "Starting log removal"
sLogFolder = "d:\retentiontest"
iMaxAge = 30 'in days
Set objFSO = CreateObject("Scripting.FileSystemObject")
set colFolder = objFSO.GetFolder(sLogFolder)
Wscript.Echo "Removing log files from folder: " & colFolder
For Each colSubfolder in colFolder.SubFolders
Set objFolder = objFSO.GetFolder(colSubfolder.Path)
Set colFiles = objFolder.Files
For Each objFile in colFiles
iFileAge = now-objFile.DateLastModified
if iFileAge > (iMaxAge+1) then
Wscript.Echo "Removing File: " & objFile.Name
objFSO.deletefile objFile, True
end if
Next
Next
Обратите внимание, что я изменил с «DateCreated» на «DateLastModified», так как дата создания контринтуитивно может быть позже, чем последний измененный, как это может быть в случае с копируемыми файлами. Вы, вероятно, не хотите удалять файлы, которые были недавно обновлены.
Затем запустите его, используя cscript.exe (например, cscript.exe d:\scripts\logRetentionScript.vbs
).