Показать полную графическую версию : [решено] Автоматическое удаление файлов из директорий
Ребята, помогите с решением проблемы.
Имеет сервак Windows 2003 Standart Edition. На серваке поднять ftp-server Serv-u. На этот сервак (в локальную папку) выкладываются файлы в подпапки. Задача такая:
Нужно чтобы после выкладывания ЛЮБОГО файла в ЛЮБУЮ подпапку папки ftp сервака, он удалялся через 7 дней. То есть предпложим человек кладет файл в папку Disney, нужно чтобы ОС удалила этот файл через 7 дней сама.
Как это можно реализовать?
PS Надеюсь понятно выразился?
Интересная задача. Силами ОС такое, ИМХО, не сделать. Только если написать скрипт, который будет отслеживать последний доступ к файлу, вычислять прошло ли 7 дней с последнего доступа и удалять файлы. Однако, я не знаю что произойдет с датой последнего доступа, если кто-то будет скачивать файлы извне. Так что задача не такая уж и небольшая :)
Можешь попробовать софт для этой цели и посмотреть как он справляется: Delenda Cleanup Software (http://peccatte.karefil.com/software/Purge/DelendaEng.htm)
Vadikan
Спасибо за идею...буду изучать. Я пока придумал банально так:
Человек выкладывает файл на фтп....я пишу батник и кладу в Планировщик заданий. Пока идей лучше у меня нет...Но хотелось бы автоматизировать эту систему.
который будет отслеживать последний доступ к файлу
вернее дате последнего изменения?
был где то скриптик выбирающий по дате и расширению,
если найду выложу, но опять же Планировщик, как вариант запуск с помощ. политики...
действительно, есть довольно неплохое сторонне ПО для этих целей,
в "+": работа в качестве службы, широкие возможности фильтрации и отбора,
в "-": как правило почти все $
Напиши прогу которая бы пасла, что у тебя делается по определенных папках в системе и производила необходимые действия. К фтп можно и не привязываться.
Мде.. Лично меня такие Ваши посты начинают напрягать... За флейм отправляю в отпуск. :butcher:
Andrik
Если бы я мог написать прогу, то не создавал бы тему:)
Fighter
А не подскажешь ли такое стороннее ПО?
RaZZoRRo
27-05-2005, 14:35
2BigMac
http://softsearch.ru/programs/34267.shtml - а вот это не поможет???? судя по описанию вам должно помочь....
RaZZoRRo
Нет, это скрипт для работы с БД. В данном случае идет работа с файловой системой.
Vadikan
Спасибо за прогу. Вроде то, что надо. Сейчас тестировать начал
Fighterвернее дате последнего изменения?Я понял, что выкладываться файлы будут копированием из произвольной папки в FTP-папку на машине-сервере. Разве в этом случае дата последнего изменения поможет? Она ж неизменной остается при таком копировании. А вот если кто-то залил файл извне, то тогда, наверное, дата последнего изменения поможет.
Человек выкладывает файл на фтп...в таком случае видимо речь идет о заливке файлов извне.
я пишу батник и кладу в Планировщик заданий.Хе-хе, так вот этот батник еще и написать надо. Я и сказал, что скрипт надо писать; батник - это тот же скрипт.
Берем рескит
Из него берем forfiles.exe
батник из 1й строки вида
forfiles -pc:\nashfolder -d-7 -c"cmd /c del @FILE"
или рекурсивно только файлы
forfiles -pc:\nashfolder -d-7 -s -c"cmd /c if @ISDIR=FALSE del @FILE"
Reskit: http://www.dynawell.com/support/ResKit/win2k.asp
4. Вешаем его на каждодневное исполнение
Vadikan
ФТП, на который потом залезаю для скачки файлов (соотв. это папка ФТП локальная). Туда заливают файлы по сети.
Ну раз уже есть такая вещь, как forfiles, то пакетный файл значительно упрощается :) Файл нашел на msfn.
>Ну раз уже есть такая вещь, как forfiles, то пакетный файл значительно упрощается Файл нашел на msfn.
Бтв, эти-же методы (т.е. батнички с рескитовыми утилитками) активно используют и сами МС у себя "дома" в сетке. ;)
TbMA
И откуда такая информация?
>И откуда такая информация?
Я у них был
TbMA
А поподробнее можно, что делает этот батник?
Vadikan
безусловно, мой косяк :)
в данном случае выбирать нужно по дате создания
TbMA
спасибо за ссылку :)
но если я не ошибаюсь в данном случае
-d-7 выбирает именно по
/D Date - Selects files with a last modified date
т.е. дате последнего изменения, поправьте если это не так
+ то, что в вашей ссылке и ссылке Vadikan'a
(последняя присутствует в дистрибутиве Win2003)
утилиты немного отличаются синтаксисом
Fighter: Именно по ней.
BigMac: Батник стирает файлы с датой старше чем 7 дней. Я не помню как там у Serv-U, но 99% фтп-серверов проставляют время создания файла.
В крайнем случае, несложно создать батник который бы ресетил время создания если оно старше (скажем) 8ми дней или "новее" чем сегодня ;)
TbMA
Спасибо. Надо будет посмотреть какие атрибуты у файлов на серваке, чтобы лишнее случайно не стереть
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.