CMD/BAT - bat файл, удаление старых резервных копий

Ответить
Аватара пользователя
share

CMD/BAT - bat файл, удаление старых резервных копий

Сообщение share »

Здравствуйте. Задача такая, удалять все файлы в директории, кроме трех самых свежих.

Помогите написать батник плз.
Аватара пользователя
alpap

Re: CMD/BAT - bat файл, удаление старых резервных копий

Сообщение alpap »

Проверяет по дате изменения, /tc - по дате создания, если все устраивает для боевой работы echo убрать:



Код:

Код: Выделить всё

@echo off
for /f "delims=" %%a in ('dir/a-d/b/o-d/tw "papka"^|more +3') do echo del /q "papka\%%a"
pause>nul

.
Аватара пользователя
megaloman

Re: CMD/BAT - bat файл, удаление старых резервных копий

Сообщение megaloman »

alpap, ИМХО цикл можно построить проще

Код:

Код: Выделить всё

@Echo Off
cls
Set "Where=d:\Delete"
Set "Mask=*.*"
Set /A N=3
FOR /F "usebackq Skip=%N% delims=" %%f IN (`Dir /b /A:-D /O:-D /T:W "%Where%\%Mask%" 2^>nul`) DO Echo Del "%Where%\%%f"

share, Для боевой работы надо указать путь к папке, маску файлов и число оставляемых свежих файлов, а Echo перед Del необходимо убрать
Ответить

Вернуться в «Скриптовые языки администрирования Windows»