Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  

Показать сообщение отдельно

Пользователь


Сообщения: 59
Благодарности: 0

Профиль | Отправить PM | Цитировать


megaloman, alpap, большое спасибо! Снова выручаете.

С конструкцией кода разобрался, подправил с учетом нюансов.
Предустановленный архиватор Winzip или 7-Zip использовать не предполагается.
Вторым файлом с батником в рабочую папку отправится консольный архиватор 7za.exe.
Путь к рабочей папке прописывать не хочется, он может/будет меняться.
Внес мелкие изменения, убрал пути и получил два варианта:

Вариант alpap:
Код: Выделить весь код
@echo off
set "d=%~dp0"
set "ar=7za.exe"
set "exp=zip"

pushd "%d%"
 for /f "delims=" %%a in ('dir /a-d/b "*.%exp%"') do %ar% x "%%a" -o"%%~na" -y
popd
Тут надо дописывать аналогичные блоки для архивов rar, 7z и т.д.
Поэтому чуть удобнее конструкция megaloman, где можно сразу перечислить все нужные архивы по маске:
Код: Выделить весь код
@Echo Off
Set Mask="*.7z" "*.rar" "*.zip"
Set "ARC="7za.exe" x"

FOR %%f IN (%Mask%) DO (
	Md "%%~nf" 2>nul
	%ARC% "%%f" -o"%%~nf\" -y
)
Вопрос решен, всё работает как надо.
Спасибо, уважаемые, за помощь и науку!

Отправлено: 16:21, 09-06-2018 | #7