Войти

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


NinjaScript
04-03-2015, 13:59
Добрый день. Помогите, пожалуйста, доработать скрипт. Суть такова: Если файлов с заданным именем ("*.*" такого формата, например, файлов с именем "*основной*.7z") в каталоге больше чем n, он удалял бы старые. Нашел на вашем замечательном форуме, не менее замечательный скрипт:
@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 del /f /q "%sFolder%\%%~i"

endlocal
exit /b 0
В котором можно задать количество необходимых файлов и необходимую папку, но не могу понять, как можно задать маску поиска по имени и расширении файла.
Сразу оговорюсь, пишется в cmd\bat на WinXP. Возможности использовать команду "forfiles" нет.
Заранее спасибо.

Iska
04-03-2015, 14:21
Так:
…dir /b /a:-d /o:-d /t:w "%sFolder%\*основной*.7z"…
?

Возможности использовать команду "forfiles" нет. »
Есть. В комплекте Resource Kit'ов.

NinjaScript
04-03-2015, 14:27
Как все просто, когда знаешь как! Большее спасибо. Проверил, все работает.
Есть. В комплекте Resource Kit'ов. »
О такой возможности мне известно. Но данный скрипт будет применяться на многих машинах, поэтому для практичности процесса приходится пользоваться стандартными средствами.
Еще раз большое спасибо, за быстрый ответ и помощь.




© OSzone.net 2001-2012