PDA

Показать полную графическую версию : [решено] Удаление папок больше n штук


thehisteam
10-03-2015, 12:23
Здравствуйте! Подскажите пожалуйста как реализовать скрипт:
Есть несколько каталогов с бэкапами, в которых ежедневно создаются папки с текущей датой 2015-03-11, где собственно и хранятся бэкапы. Как ограничить количество папок с датами 7 шт? Чтобы при превышении количества папок старые удалялись. Спасибо)

thehisteam
10-03-2015, 12:31
Нашел готовый скрипт для моей задачи. Большое спасибо Iska
Только подскажите пожалуйста как добавить несколько директорий в скрипт, для каждой добавлять переменную и сам скрипт?

@echo off
setlocal enableextensions enabledelayedexpansion

set sFolder=C:\Documents and Settings\User\Мои документы\Мои рисунки\PicPic
set /a iCount = 10

for /f "skip=%iCount% usebackq delims=" %%i in (
`dir /b /a:d /o:-d /t:w "%sFolder%"`
) do echo rd /s /q "%sFolder%\%%~i"

endlocal
exit /b 0

Iska
10-03-2015, 20:30
Как-то так (не проверялось):
@echo off
setlocal enableextensions enabledelayedexpansion

set /a iCount = 10

for %%i in (
"C:\Documents and Settings\User\Мои документы\Мои рисунки\PicPic"
"C:\Мои проекты\001"
"C:\Мои проекты\002"
) do (
for /f "skip=%iCount% usebackq delims=" %%j in (
`2^>nul dir /b /a:d /o:-d /t:w "%%~i"`
) do echo rd /s /q "%%~i\%%~j"
)

endlocal
exit /b 0

Для реального удаления уберите «echo».

thehisteam
11-03-2015, 08:46
Iska, Спасибо огромное. Скажите пожалуйста с чего можно начать изучение скриптов (какие сайты почитать), чтобы использовать их в таких повседневных задачах?




© OSzone.net 2001-2012