Удаление старых бэкап файлов
Рылся в поисковике и на форуме везде нашёл только удаление файлов по дате. В прицепе оно и надо но всё же это не правильно. Так как могут все бэкапы быть старше определённой даты и значит они все удалятся, что естественно не должно быть. Помогите пожалуйста реализовать код или поправить из этой темы так чтобы удалялись все старые файлы но чтобы оставались 3 последние папки бэкапа. Заранее спасибо! :).
|
Удаление файлов по дате
Код:
@echo off
setlocal enableextensions enabledelayedexpansion
for /f "skip=3 delims=" %%i in ('dir "*.bkf" /b /a:-d /o:-d 2^>nul') do echo del /f /q "%%i"
endlocal
exit /b 0
Если получается корректный список файлов — уберите «echo» для реального применения команды «del».
|
Спасибо вроде работает. Только чуть изменил код:
Код:
setlocal enableextensions enabledelayedexpansion
for /f "skip=3 delims=" %%i in ('dir "*.*" /b /a:d /o:-d 2^nul') do rd /s /q "%%i"
endlocal
|
Starter1, прошу прощения, я что-то не доглядел, что речь шла про папки:
Цитата:
Цитата Starter1
…оставались 3 последние папки бэкапа. »
|
|
CyberMuesli |
12-06-2012 15:36 1932908 |
Часто вижу подобные темы и не очень понимаю, что мешает использовать по первым числам полный бэкап и в остальные - инкрементальный. Дополнительно выдача дисковых квот + фильтр по размерам и расширениям при бэкапе. При совмещении всех методов у меня бэкапы хранятся ГОДАМИ и бывает, требуются файлы, которые были правильными год назад, а потом какой-то давно уволенный сотрудник их безнадежно испортил, никакие три последних бэкапа тут уже не помогут.
|
Время: 05:54.
© OSzone.net 2001-