Удалить лишние файлы
Здравствуйте, нужна помощь в решении следующей задачи.
Есть папка .\temp в которой лежат 300 файлов. Часть файлов больше 1 мегабайта часть файлов менее 100 килобайт. Нужно удалить (delete) все файлы которые менее 100 килобайт. Подскажите пожалуйста каким способом лучше всего решить задачу. |
Цитата:
Код:
#requires -v 3.0 Код:
#requires -v 2.0 |
Цитата:
Выспавшись, на свежую голову написал на смд. Кстати подскажите пожалуйста на будущее как в вашем примере искать рекурсивно. То есть если в папке .\temp\ лежат папки с файлами. |
Patroklos,
Код:
@Echo Off |
megaloman, обожаю читать ваш код. Каждый раз маленький шедевр. Многому учусь.
Мой код намного проще. Видимо не все нюансы учёл. Вот что у меня получилось. Код:
setlocal enabledelayedexpansion |
Цитата:
Цитата:
Код:
dir $folder -file -rec |
Цитата:
Кто умеет/хочет делать - делает, кто не умеет/не хочет - критикует. Если хотите намного проще, натека:
Код:
@Echo Off Код:
@Echo Off Первый код, кстати, можно подсократить, но он тоже будет работать с длинами файла не более 9 знаков:
Код:
@Echo Off |
Цитата:
Код:
md 2del |
можно одной строкой сделать
FORFILES /P %temp% /S /M * /C "cmd /c if @fsize GTR 100000 echo @path размер файла @fsize" можно еще добавить /D -30 чтобы удалял только файлы старше 30 дней. |
Время: 02:53. |
Время: 02:53.
© OSzone.net 2001-