Дайте приведенный ниже пакетный скрипт, который использует цикл FOR /F и CALL для явного выполнения каждого файла .bat
(с CALL), начиная с местоположения RootDir и рекурсивного обхода оттуда для поиска и выполнения всех файлов .bat
в других подпапках под этим.
Обязательно измените значение переменной SET RootDir=C:\Folder
на путь к папке, в которой вам нужно найти .bat
файлы, начиная с него и просматривая все вложенные папки в нем, которые содержат другие .bat
файлы, которые нужно выполнить (например, SET RootDir=C:\OtherFolder
).
Пакетный скрипт 1
@ECHO ON
SET RootDir=C:\Folder
FOR /F "TOKENS=*" %%A IN ('DIR /S /B "%RootDir%\*.bat"') DO CALL "%%~A"
GOTO EOF
Пакетный скрипт 2
@ECHO ON
SET RootDir=C:\Folder
CD /D "%RootDir%"
FOR /F "TOKENS=*" %%A IN ('DIR /S /B "*.bat"') DO CALL "%%~A"
GOTO EOF
Пакетный скрипт 3
@ECHO ON
SET RootDir=C:\Folder
FOR /F "TOKENS=*" %%A IN ('DIR /S /B "%RootDir%\*.bat"') DO CMD /C "%%~A"
GOTO EOF
Пакетный скрипт 4
@ECHO ON
SET RootDir=C:\Folder
FOR /F "TOKENS=*" %%A IN ('DIR /S /B "%RootDir%\*.bat"') DO START "" "%%~A"
GOTO EOF
Дополнительные ресурсы