VBS/WSH/JS - Помогите улучшить скрипт для поиска и удаления файлов

Ответить
 • Просмотры: 1
Аватара пользователя
UpDaTe

VBS/WSH/JS - Помогите улучшить скрипт для поиска и удаления файлов

Сообщение UpDaTe »

Всем привет!

Написал скрипт на VBS, который в заданной папке и всех ее подпапках удаляет все файлы с заданным расширением и выводит статистику сколько файлов было удалено и суммарный размер удаленных файлов.

Например, я указываю в качестве пути к папке локальный диск d:\, в качестве расширения bmp (ну понятно в тестовом режиме я не использую удаление, т.е. просто поиск и вывод информации). Скрипт выдает допустим 3567 файлов общим размером 250 Мбайт. Далее я просто виндовым поиском ищу на этом же диске *.bmp и получаю 15964 найденных файлов. Разница огромна. А все дело в том что винда ищет в том числе и в архивах, а мой скрипт - нет.

Вопрос: как в VBS просматривать файлы в архивах? И удалять их оттуда.

Спасибо.
Аватара пользователя
Iska

Re: VBS/WSH/JS - Помогите улучшить скрипт для поиска и удаления файлов

Сообщение Iska »

UpDaTe, теоретически — при зарегистрированной библиотеке «%systemroot%\system32\zipfldr.dll» можно попытаться задействовать «Shell.Application» для поиска. Практически — для более-менее серьёзной работы лучше попробовать пользовать какой-либо сторонний компонент, наподобие:
vbscript: работа с zip-архивами с помощью компонента Zip Component
.
Аватара пользователя
UpDaTe

Re: VBS/WSH/JS - Помогите улучшить скрипт для поиска и удаления файлов

Сообщение UpDaTe »

Эх, думал не смотря на название компонент будет работать с разными типами архивов, в частности RAR. А оказывается не умеет... и ошибок не выдает, но и действий с rar-архивами не производит.
Аватара пользователя
UpDaTe

Re: VBS/WSH/JS - Помогите улучшить скрипт для поиска и удаления файлов

Сообщение UpDaTe »

Нет, только zip.



Если нужно с rar и прочими — скорее всего придётся либо работать с командными строками архиваторов, либо непосредственно с библиотеками, прилагающимися к архиваторам. Последнее требует WinAPI, следовательно — либо какой-либо «большой» ЯВУ, либо AutoIt. Кстати сказать, Universal Extractor написан именно на AutoIt и работает, используя оба озвученных принципа.
Ответить

Вернуться в «Скриптовые языки администрирования Windows»