пятница, 2 октября 2009 г.

Разархивация всех файлов в каталоге

Скачал я на днях сборник книжек одного из моих любимых авторов. Хороший сборник, штук 50 книжек в любимом мной формате .fb2, но вот беда - какой-то нехороший человек умудрился заархивировать сборник - один архив на одну книжку. Итого 50 архивных файлов в папке. С давних пор живя по методе - "хороший админ - ленивый админ", я набросал простенький .cmd-файл, который моментально выдал мне требуемое. На будущее, чтобы не писать все когда-нибудь заново, выложу здесь, авось еще пригодится...
Да - пользуюсь архиватором 7-Zip, архивы с книгами лежат в C:\Books.

@echo off
del error_list.txt
dir /b/s C:\Books\*.zip>list.tmp

for /f "delims=" %%i in (list.tmp) do call :File "%%i"
goto :EOF

:File
"%ProgramFiles%\7-Zip\7z.exe" x -y %1 -o"%~d1%~p1"
if errorlevel 1 (
echo %1>>error_list.txt
) else (
del %1
)

2 комментария:

Чайкин Евгений комментирует...

А разве читалка не понимает формат fb2.zip?

Иваныч комментирует...

Возможно, понимает, не проверял, я по-старинке... :)