мне нужно удалять файлы из папки каждые 4 часа. В противном случае папка хранилища будет заполнена файлами и рабочий сервер зависнет.
Вы можете создать пакетный файл для удаления файлов в подпапке, а затем создать запланированную задачу для запуска пакетного файла каждые 4 часа.
Поскольку планировщик Windows не позволяет выполнять почасовые задачи, вам придется перейти к расширенным параметрам и создать несколько ежедневных задач, которые смещены друг от друга на 4 часа.
Чтобы удалять все файлы из папки хранения, скажем, C: \ Temp, каждые четыре часа, я бы использовал следующий битерскрипт.
# Script delete.txt
while (true)
do
# Collect a list of all files.
var str list ; lf -n "*" "C:\Temp" ($ftype=="f") > $list
# Delete all files
while ($list <> "")
do
var str file ; lex "1" $list > $file
system delete ("\""+$file+"\"")
done
# Sleep 4 hours.
sleep (60*60*4)
done
Битерскриптинг можно скачать с http://www.biterscripting.com . Последний раз я проверял, это было бесплатно.
Я заключаю $ file в команде удаления в двойные кавычки на случай, если файл или путь могут содержать пробелы или другие специальные символы.
Патрик
Существует сценарий vbs (google для deleteoldfiles.zip), который мы используем для удаления файлов старше определенного количества дней с нашего файлового сервера. Не уверен, что его можно настроить на работу за 4 часа, но это было бы хорошим местом для начала.