如何批量运行批处理

Tom*_*ina 0 windows cmd batch-file

我尝试运行schedule.bat:

@echo off
C:\scripts\batch1.bat
C:\scripts\batch2.bat
C:\scripts\batch3.bat
Run Code Online (Sandbox Code Playgroud)

每个batchx.bat的位置是:

@echo off
pushd "C:\otherfolder\"
echo "start batch1"
someprogram.exe parameter1
echo "batch1 end"
popd
Run Code Online (Sandbox Code Playgroud)

(不同的参数,有时更多的一些程序,所以我不能在循环中做到这一点)

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

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

MC *_* ND 5

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

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

@echo off
call C:\scripts\batch1.bat
call C:\scripts\batch2.bat
call C:\scripts\batch3.bat
Run Code Online (Sandbox Code Playgroud)

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