如何在批处理中运行多个cmd文件?

时间:2015-05-20 12:15:43

标签: windows batch-file cmd

我看过很多关于此类问题的帖子,但我找不到适合我的例子的答案。

我需要什么

在我的脚本中,我需要启动特定文件夹中的所有.cmd文件(不是我的脚本所在的位置)。它是53个.cmd文件,在该文件夹中执行不同类型的作业。

问题

我想要一个简短的命令,可以在一行或几行内打开所有文件,其中有53行start "c:\allcmdfiles\example-xxx-xx shortcut.cmd"

我正在尝试

因此,对于StackOverFlow上的其他帖子,我遇到了call命令。我已经尝试了各种这些命令,但无法使其正常工作

for %%f in ("c:\allcmdfiles*.cmd") do CALL %%f

  

也许是一些实用信息

     

它将在Windows Server 2008 R2 std上运行,但我在W7上进行测试

     

文件将随名称中的空格和短划线

而变化

我的问题

所以有人知道我怎么能指出这个吗?谢谢!

2 个答案:

答案 0 :(得分:2)

$('#category').on('change', function() {
    $('#whatilove').val($('#category option:selected').text());
});

你错过了for /f "tokens=*" %%i in ('dir /b c:\allcmdfiles\*.cmd') do call c:\allcmdfiles\%%i 命令列出带有野猫的文件,我们使用了dir(简短)因为我们只需要文件的名称

答案 1 :(得分:2)

这适用于我的批处理文件:

^[1-3-]\/[1-3-]$

或命令行中的等价物:

for %%f in ("c:\test\test*.cmd") do call "%%f"

我注意到在使用Kayasax的变种时,你说第一个子脚本运行然后父进程退出。这表明子脚本正在使用for %f in ("c:\test\test*.cmd") do call "%f" 命令。最好的解决方案是修复子脚本,但是如果你不能这样做,你必须在子shell中运行它:

exit