Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » VBS/WSH/JS - [решено] Удаление файлов созданных ранее текущей даты на неделю

Ответить
Настройки темы
VBS/WSH/JS - [решено] Удаление файлов созданных ранее текущей даты на неделю

Аватара для KillHunter

Пользователь


Сообщения: 143
Благодарности: 2

Профиль | Отправить PM | Цитировать


Добрый день! помогите написать скрипт для удаления файлов созданных ранее текущей даты на неделю. Цель сего скрипта такова, есть файлы в директории D:\Backup, созданные с помощью ntbackup (файлы *.bkf), которые содержат в имени файла дату создания(04.02.2009.bkf).Нужно чтобы скрипт проверял текущую дату и удалял файлы старее 1 недели.

-------
http://www.2ip.ru/bar/ip21.gif


Отправлено: 09:53, 02-03-2009

 

Googler


Сообщения: 3665
Благодарности: 1563

Профиль | Отправить PM | Цитировать


если имя файла соответствует отображению даты текущей локали:
Код: Выделить весь код
strRoot = "C:\Backup"

Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objDIR = objFSO.GetFolder(strRoot)
Set colFiles = objDIR.Files

For Each objFile In colFiles
  FileDate = CDate(Left(objFile.Name,10))
  If DateDiff("w",FileDate,Now)>0 Then
    objFile.Delete
  End If
Next
Это сообщение посчитали полезным следующие участники:

Отправлено: 10:49, 02-03-2009 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Аватара для KillHunter

Пользователь


Сообщения: 143
Благодарности: 2

Профиль | Отправить PM | Цитировать


Цитата:
если имя файла соответствует отображению даты текущей локали:
Код: Выделить весь код
 Код:  strRoot = "C:\Backup"  Set objFSO = CreateObject("Scripting.FileSystemObject") Set objDIR = objFSO.GetFolder(strRoot) Set colFiles = objDIR.Files  For Each objFile In colFiles   FileDate = CDate(Left(objFile.Name,10))   If DateDiff("w",FileDate,Now)>0 Then     objFile.Delete   End If Next
Выдаёт ошибку несоответствие типа CDate

-------
http://www.2ip.ru/bar/ip21.gif


Отправлено: 16:05, 03-03-2009 | #3


Googler


Сообщения: 3665
Благодарности: 1563

Профиль | Отправить PM | Цитировать


Цитата KillHunter:
Выдаёт ошибку несоответствие типа CDate »
значит имя файла не соответствует формату даты, отладочный вариант:
Код: Выделить весь код
On Error Resume Next
strRoot = "C:\Backup"

Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objDIR = objFSO.GetFolder(strRoot)
Set colFiles = objDIR.Files

For Each objFile In colFiles
  FileDate = CDate(Left(objFile.Name,10))
  If Err.Number<>0 Then
    WScript.Echo "Файл: """ & objFile.Name &""""& vbCRLF & _
      "Дата: """ & Left(objFile.Name,10) &""""& vbCRLF & _
      vbCRLF & Err.Description
    WScript.Quit
  End If
  If DateDiff("w",FileDate,Now)>0 Then
    objFile.Delete
  End If
Next
Это сообщение посчитали полезным следующие участники:

Отправлено: 17:14, 03-03-2009 | #4


Аватара для KillHunter

Пользователь


Сообщения: 143
Благодарности: 2

Профиль | Отправить PM | Цитировать


Спасибо.В данном виде всё работает.

-------
http://www.2ip.ru/bar/ip21.gif


Отправлено: 10:36, 05-03-2009 | #5


Googler


Сообщения: 3665
Благодарности: 1563

Профиль | Отправить PM | Цитировать


скрипты абсолютно одинаковые, но в последнем варианте отключены системные сообщения об ошибках, поэтому лучше найти ошибку

Отправлено: 12:23, 06-03-2009 | #6



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » VBS/WSH/JS - [решено] Удаление файлов созданных ранее текущей даты на неделю

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
CMD/BAT - [решено] Удаление созданных папок и файлов по времени zavoruev Скриптовые языки администрирования Windows 24 22-04-2013 10:36
Любой язык - [решено] Удаление файлов ags555 Скриптовые языки администрирования Windows 5 28-09-2009 20:54
CMD/BAT - [решено] Удаление .ini-файлов -Marshall- Скриптовые языки администрирования Windows 2 12-07-2009 13:13
Любой язык - [решено] удаление файлов по маске, созданных за прошлые сутки BRAT2 Скриптовые языки администрирования Windows 1 06-04-2009 08:51
Прочие БД - Interbase 7,удаление всех записей до определенной даты dima-sh Программирование и базы данных 1 27-02-2009 01:27




 
Переход