Преминете през директории, започващи с конкретна буква, и изпълнете пакетен скрипт

Имам много директории, които започват с UT_ (UT_abc, UT_def, UT_ghi, ...). Бих искал да отида във всяка от тези директории и да изпълня команда (makefile). Опитах това:

FOR /f %%p IN ("UT_*") DO make "%%p" /s /q

Но не става. Освен това във всяка от тези UT_xyz директории съществува по една директория и съдържанието. Например:

UT_abc\directoryabc\makefile
UT_def\directorydef\makefile
UT_ghi\directoryghi\makefile

.... Някаква идея?


person JohnDoe    schedule 03.09.2015    source източник


Отговори (1)


В момента анализирате литералния низ "UT*".

Използвайте нормално изброяване на директории и предайте правилно пътя към make:

FOR /d %%p IN (UT_*) do FOR /d %%s IN (%%p\*) do make --directory "%%s" /s /q

Или променете workdir в тази директория:

FOR /d %%p IN (UT_*) do FOR /d %%s IN (%%p\*) do pushd "%%~dpnxs" & make /s /q & popd
person wOxxOm    schedule 03.09.2015