У меня есть корневой каталог со многими различными подкаталогами, в которых есть файлы .zip (пример ниже). Мне нужен пакет /.cmd /etc, чтобы разархивировать zip-файлы в их подкаталогах и переименовать извлеченный файл (.tif) так же, как zip-файл. Я исследовал и нашел следующий код, однако он будет работать только при размещении в подкаталогах. Не родительская папка. Как заставить этот код работать через все подкаталоги, как объяснено?
Пример структуры файла
C:\This\Is\Random\Parent\Sub\Sub\1234.zip {ABCD.tif}
Что я ищу C:\This\Is\Random\Parent\Sub\Sub\1234.tif
set work=%temp%\%random%%random%%random%%random%
mkdir "%work%" || goto :eof
for %%A in ('dir /b /s *.zip *.rar') do (
"%ProgramFiles%\7-Zip\7z.exe" e -o"%work%" "%%~A"
for %%F in ("%work%\*") do move "%%~F" "%%~nA%%~xF"
)
rmdir "%work%"