Пакетное удаление файлов, но сохранить 6 файлов? - PullRequest
0 голосов
/ 02 мая 2018

У меня есть каталог с множеством подпапок. Я хочу удалить все файлы, но оставлю первые 6 файлов для каждой подпапки. Как я могу сделать это на Windows Server 2012?

1 Ответ

0 голосов
/ 02 мая 2018
  • Измените переменные BaseDir и KeepFiles в соответствии с вашими потребностями.
  • Если вывод выглядит нормально, удалите эхо в последней строке

:: Q:\Test\2018\05\02\SO_50129236.cmd
@Echo off & SetLocal
Set "BaseDir=Q:\Test\2018"
Set "KeepFiles=6"

Pushd "%BaseDir%" || (echo couldn't find BaseDir&Pause&exit /b 1)
For /F %%A in (
  'dir /B /S /AD 2^>nul'
) do For /F "skip=%KeepFiles% delims=" %%B in (
  'dir /B /A-D /ON "%%~fA\*" 2^>NUL'
) do Echo del "%%~fA\%%~nxB"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...