如何在批处理文件中的子文件夹(没有for循环)中运行多个批处理文件?

时间:2015-01-29 12:13:40

标签: batch-file cmd

我有一个包含3个子文件夹的Main文件夹。我想在我的主文件夹中创建一个批处理文件,它将同时执行3个子文件夹中的批处理文件。我想在不使用for循环的情况下这样做。

这里只是为了清楚地了解结构:

MainFolder
-abc.bat
 Subfolder1
 -a.bat
 Subfolder2
 -b.bat
 Subfolder3
 -c.bat 

Mainfolder(abc.bat)中的批处理文件应该能够同时执行子文件夹中的3个批处理文件。

1 个答案:

答案 0 :(得分:1)

abc.bat中尝试以下命令并告诉我这是否是您想要的:

set CALL_PATH=%~dp0

start call %CALL_PATH%\Subfolder1\a.bat
start call %CALL_PATH%\Subfolder2\b.bat
start call %CALL_PATH%\Subfolder3\c.bat

阅读完评论后,我认为您的问题是在使用start时在同一屏幕上运行。为此,您可以使用/I标志

I           The new environment will be the original environment passed
            to the cmd.exe and not the current environment.
像这样:

set CALL_PATH=%~dp0

start /I call %CALL_PATH%\Subfolder1\a.bat
start /I call %CALL_PATH%\Subfolder2\b.bat
start /I call %CALL_PATH%\Subfolder3\c.bat

如果这没有帮助,请使用以下方法阅读启动命令的帮助:

start /?