Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  

Показать сообщение отдельно

Ветеран


Contributor


Сообщения: 2710
Благодарности: 1686

Профиль | Отправить PM | Цитировать


UserName1989,
Вот вариант, который удалит кол-во файлов, кратное заданному числу, и оставляет кол-во файлов, менее этого числа, последние при сортировке по имени. Если кол-во файлов нацело делится на это число, удалятся все файлы
Код: Выделить весь код
@Echo Off
cls                                                                                                 

chcp 866 >nul
Set "BoxIn=Z:\Папка с файлами"
Set "Mask=*"

Set /A Diskret=5

Pushd "%BoxIn%" || (Echo "%BoxIn%" not found &Pause &Exit /B 1)

chcp 437 >nul
Set /A N=0
FOR /F "usebackq tokens=1,2 delims= " %%i IN (`2^>nul Dir /A:-D`) DO If /I "%%j"=="File(s)" Set /A N=%%i

chcp 866 >nul
Set /A N=%N% %% %Diskret%

If %N%==0 Del /Q "%BoxIn%\*.%Mask%" 2>nul &Exit /B
 
FOR /F "usebackq Skip=%N% delims=" %%i IN (`2^>nul Dir /B /A:-D /O:-N "%BoxIn%\*.%Mask%"`) DO Del "%%i"
Exit /B
Если всё же надо удалять с паузами, то вот вариант
Код: Выделить весь код
@Echo Off
cls                                                                                                 

chcp 866 >nul
Set "BoxIn=Z:\Папка с файлами"
Set "Mask=*"

Set /A Diskret=5
Set /A TPause=3

Pushd "%BoxIn%" || (Echo "%BoxIn%" not found &Pause &Exit /B 1)

chcp 437 >nul

:Begin
	Set /A N=0
	FOR /F "usebackq tokens=1,2 delims= " %%i IN (`2^>nul Dir /A:-D`) DO If /I "%%j"=="File(s)" Set /A N=%%i

	Set /A N=%N%-%Diskret%
        
	If Not %N% GTR 0 Exit /B
	If %N% GTR 0 FOR /F "usebackq Skip=%N% delims=" %%i IN (`2^>nul Dir /B /A:-D /O:-N "%BoxIn%\*.%Mask%"`) DO Del "%%i"
	TimeOut /T %TPause%  /NOBREAK
GoTo :Begin
Exit /B

-------
Даже самая сложная проблема обязательно имеет простое, лёгкое для понимания, неправильное решение. Каждое решение плодит новые проблемы.


Последний раз редактировалось megaloman, 15-10-2018 в 00:43.

Это сообщение посчитали полезным следующие участники:

Отправлено: 23:41, 14-10-2018 | #7