2

Я хочу настроить автоматическое задание, которое будет автоматически удалять файлы старше X дней из определенной папки. Я бы предпочел сделать это без необходимости установки какого-либо стороннего программного обеспечения, но я буду в порядке, если это очень маленькая и простая утилита.

Я хочу, чтобы это заставило меня держать свои файлы организованными. Я настраиваю свой браузер для загрузки в стандартную папку, а затем с помощью этого скрипта для автоматического удаления файлов старше недели я буду вынужден перемещать и организовывать загруженные файлы, которые я хочу сохранить.

4 ответа4

2

Как насчет Бельведера от одного из редакторов Lifehacker .

альтернативный текст

1

Это довольно легко с Windows Scripting Host. Пример сценария выглядит примерно так:

numDays = 7

Set objfso = CreateObject("Scripting.FileSystemObject")
Set objFile = objFso.GetFile("C:\test.txt")

Sub DeleteOldFile(objFile, numDays)
    dateFile = objFile.DateLastModified
    dateToday = Now()

    If dateFile <= dateToday Then
        daysOld = dateToday - dateFile
        If daysOld > numDays Then
            objFile.Delete
        End If
    Else
        WScript.Echo "Incorrect date stamp in", strFile
    End If

End Sub

Вам нужно будет написать свой сценарий, а затем запустить его как запланированное задание. Может быть, через тридцать минут после того, как вы войдете в систему по утрам в пятницу, чтобы дать себе последний шанс получить те файлы, которые вы хотите сохранить. Полный источник для этого примера.

1

Я сам разработал решение для этого некоторое время назад, прежде чем я нашел DelOld. Это очень маленький инструмент, который делает именно то, что вам нужно, и он доступен в виде файла .jar, упакованного исполняемого файла Java, исполняемого файла Visual Basic (MSVBVM60.DLL требуется), и, конечно, в качестве исходного кода.

Просто укажите 2 аргумента командной строки - путь к папке и количество дней до удаления файла. Он также может быть запущен через пакетный скрипт через планировщик задач.

пример:

DelOld.exe "C:\Downloads" 30

Это удалит все файлы старше 30 дней в папке C:\Downloads .

1

Есть команда windows под названием forfiles. Я думаю, что это было на наборе ресурсов Windows 2000. Я нашел ссылку на него с веб-сайта Петри: http://www.petri.co.il/download_free_reskit_tools.htm. С ним можно многое сделать, включая удаление отдельных файлов в зависимости от их возраста или целых каталогов.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .