PDA

Показать полную графическую версию : bat файл, удаление старых резервных копий


share
23-06-2016, 17:07
Здравствуйте. Задача такая, удалять все файлы в директории, кроме трех самых свежих.
Помогите написать батник плз.

alpap
23-06-2016, 22:18
Проверяет по дате изменения, /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
23-06-2016, 23:00
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 необходимо убрать




© OSzone.net 2001-2012