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 необходимо убрать