在一个批处理文件中运行多个CMD文件

时间:2013-10-08 07:16:42

标签: batch-file

我想制作一个通用脚本,在几个子文件夹上运行每个CMD文件。 E.g。

每个子文件夹包含1个CMD文件(名称不相同)。它每次都不是相同的子文件夹 C:\文件夹\ Folder1中 C:\文件夹\文件夹2 C:\文件夹\ folder3 等

所以我想搜索所有子文件夹并在每个子文件夹上运行所有CMD文件。

2 个答案:

答案 0 :(得分:1)

这旨在:

1)查找树中的每个.bat文件 2)依次用批处理文件切换到每个目录 3)运行.bat文件在

中的文件夹中
@echo off
for /r %%a in (*.bat) do (
   pushd "%%~dpa"
      call "%%a"
   popd
)

如果要在每个文件夹的树中运行每个.bat文件:

@echo off
for /r %%a in (*.bat) do (
 for /d /r %%b in (*) do (
  pushd "%%b"
      call "%%a"
  popd
 )
)

答案 1 :(得分:0)

for /f %%a in ('dir /s /b *.cmd') do call %%a

dir /s /b *.bat构建所有cmd文件的列表

要并行运行所有这些文件,请将call替换为start