скрипт ротации log-ов и backup-ов для windows

Запись создана 12 марта, 2008

[cc lang=»vb»]
‘==========================================================================

‘ VBScript Source File — Created with SAPIEN Technologies PrimalScript 3.1

‘ NAME: remlogs.vbs

‘ AUTHOR: Подлячок
‘ DATE : 19.06.2005

‘ COMMENT: Скриптик для автоматического удаления log-ов и backup-ов, срок актуальности которых истек.
‘ Срок после которго данный лог или бэкап вам уже точно не понадобиться определяется только вашим
‘ гражданским самосознанием, исходя из принципов разумности и политики вашей организации.
‘==========================================================================

‘Объявляем пременные
Dim Fso,File,BackupFolder,backupFiles,PathName,Result,Name,Output
Dim Counter,CurrentDate,FileDate,WshShell,a,str
‘Инициализируем переменные
Counter=0
PathName=»нужная вам папочка»
‘Получаем значение текущей даты
CurrentDate=Date

‘Создаем объекты: WScript.Shell и Scripting.FileSysemObject
Set WshShell=WScript.CreateObject(«WScript.Shell»)
Set Fso=WScript.CreateObject(«Scripting.FileSystemObject»)
‘Получаем объект — нужная нам папка
Set BackupFolder=Fso.GetFolder(PathName)
‘Получаем коллкцию объектов типа «File» из нужной папки
Set backupFiles=BackupFolder.Files
‘ Цикл. Для каждого обекта-File из коллекции обектов — Files
For Each File In backupFiles
‘Получаем дату зоздания файла
FileDate=File.DateCreated
‘Получаем период между датой создания файла и текущей датой
Result=CurrentDate-FileDate
‘Если период между датой создания файла и текушей датой больше заданного значения, то
‘удаляем файл и формируем строку, которую будем писать в лог-файл и строку которую мы будем выводить в наше сообщение
‘(можно не формировать строку здесь и далее это сделанно для наглядности).
If Result>Количество дней после которого файлы будут удаляться Then
Counter=Counter+1
str=Str + «Был удален файл» & File.Name & » » & CurrentDate & VbCrLf
Name=Name & File.Name & VbCrLf
File.Delete
end If
Next
‘Открываем файл log.txt на запись (опционально)
Set a=Fso.OpenTextFile(«c:\log.txt»,2,False)
‘Записываем туда сформированную в цикле строку (опционально)
a.WriteLine(Str)
‘Закрываем файл (опционально)
a.Close
‘Выводим окно сообщения о том какие файлы мы удалили (опционально)
Output=MsgBox(«Было удаленно » & Counter & » файл(а/ов)» & vbCrLf & Name,64, «Output Box»)
[/cc]

» Запись из раздела windows | Комментировать

Комментарии





Ответить