Chcę uruchomić wszystko x.bat
automatycznie we wszystkich rekursywnych podkatalogach:
C:\test
|
+---folder1
| x.bat
|
+---folder2
| x.bat
|
+---folder3
. x.bat
.
.----foldern
x.bat
Może być sekwencyjnie lub jednocześnie, to nie ma znaczenia.
Mam to:
@echo off
for /r /d %%x in ("*") do (
pushd "%%x"
call "x.bat"
popd
)
pause
Ale działa tylko x.bat
na folder1
.
Odpowiedzi:
Twój kod działa idealnie na moim komputerze.
Stworzyłem testowy katalog z twoim test.bat i dwoma testowymi katalogami zawierającymi x.bat:
Te pliki zawierają:
Teraz, aby go uruchomić:
Działa dla mnie dobrze. Powiedziałbym, że problem tkwi w x.bat w podkatalogach. Na pewno nie zapisałeś gdzieś w folderze „folder1”?
źródło