Я хочу использовать пакетный скрипт для циклического перемещения по папкам и подпапкам и возврата всех папок, содержащих файлы XML, в одну строку. (Мне нужно иметь возможность отправить это как параметр)
Моя структура папок относительно проста, у меня есть «родительская» папка, содержащая подпапки, и каждая из них содержит XML-файлы. Итак, структура папок выглядит следующим образом:
MasterFolder1> Подпапка1> file1.xml - file2.xml ... другие файлы
Подпапка2> file1.xml - file2.xml ... другие файлы
... другие подпапки
MasterFolder2> Подпапка1> file1.xml - file2.xml ... другие файлы
Подпапка2> file1.xml - file2.xml ... другие файлы
... другие подпапки
и т. Д.
То, что я уже смог построить, - это пакетные данные, которые будут проходить по всем папкам, и будут заботиться только о тех, которые имеют файлы XML. Это выглядит следующим образом:
@echo off & setLocal enableDELAYedexpansion
set catdir=%CD%\catalog\%
cd %catdir%
FOR /f %%G in ('dir /ad/s/b') DO (
if exist %%G\*.xml (
for /f "tokens=1-6 delims=\/" %%i in ("%%G") do (
set model=%%m REM 'model' is the master folder name
set locale=%%n REM 'locale' is the sub folder name
echo %%m - %%n
)
)
)
pause
Что дает мне вывод типа
Model1 - DE
Model1 - FR
Model1 - ES
Model2 - DE
Model2 - FI
Model2 - DK
и т. Д.
Теперь, что я хотел бы получить, это что-то вроде этого:
Model1 - DE; FR; ES
Модель2 - DE; FI; DK
и т. Д., Чтобы я мог отправить свою основную папку как одну переменную, а все подпапки основной папки как сгруппированную переменную в приложение.
Надеюсь, я немного ясен, я абсолютный новичок в пакетных файлах.