Пакетное извлечение файлов 7z и использование каждого выходного файла в качестве входных данных для другого инструмента

Пакетное извлечение файлов 7z и использование каждого выходного файла в качестве входных данных для другого инструмента

Я немного новичок в написании скриптов и вот с чем я хотел бы попросить помощи, пожалуйста. Я ищу пакетный скрипт для запуска против cmd.exe.

  1. У меня есть папка с сотнями архивов .7z. Каждый архив состоит из одного файла. Папка также содержит 7-zip.exe и tool.exe, используемые далее в скрипте.

  2. Возьмите первый архив, распакуйте его с помощью 7-zip и поместите вывод вТемпподпапка.

  3. Используйте другой инструмент для преобразования входного файла вТемпи вывести полученный файл вОбработанныйподпапка.

  4. Команда для рассматриваемого инструмента — ---> tool.exe -i "путь к входному файлу с расширением .abc"-о"путь к выходному файлу с расширением .def" -f xxx -c yyy -lz -b zzzzzz <---.

  5. Удалить исходный файл изТемппапка.

  6. Перейти к следующему архиву .7z и т. д.

Заранее большое спасибо за помощь.

решение1

Из информации, которую вы мне передали, я предполагаю, что это будет что-то вроде этого:

@echo off

for %%a in (*.7z) do call :Extract "%%~na" "%%a"

exit

:Extract
md "%~1.tmp"
7-zip.exe x "%~2" -o"%~1.tmp\"
for /f "Delims=" %%a in ('dir /b "%~1.tmp\*.abc"') do set ABCFile=%%~na

tool.exe -i "%~1.tmp\%ABCFile.abc%" -o "%ABCFile%.def" -f xxx -c yyy -l z -b zzzzzz
rd /q /s "%~1.tmp"
goto :EOF

Связанный контент