如何批量运行批处理

时间:2017-03-05 09:42:49

标签: windows batch-file cmd

我尝试运行schedule.bat:

@echo off
C:\scripts\batch1.bat
C:\scripts\batch2.bat
C:\scripts\batch3.bat

每个batchx.bat的位置为:

@echo off
pushd "C:\otherfolder\"
echo "start batch1"
someprogram.exe parameter1
echo "batch1 end"
popd

(不同的参数,有时甚至更多的某些程序,所以我不能在循环中这样做)

当我尝试运行schedule.bat时,它只执行第一个bat(在本例中为batch1

当我将内容复制到一个蝙蝠中时 - 它运行正常,所以这对我的程序没有问题 - 批处理1结束也是schedule.bat ......

1 个答案:

答案 0 :(得分:5)

当批处理文件直接调用另一个批处理文件时,执行控制将转移到被调用文件,并且不会返回给调用者。

如果使用call命令完成调用操作,则此行为会更改。

@echo off
call C:\scripts\batch1.bat
call C:\scripts\batch2.bat
call C:\scripts\batch3.bat

这样一旦被调用的批处理文件结束,执行就会返回给调用者。