如何在Windows命令行环境中以串行方式运行多个批处理文件

Nic*_*ick 22 cmd batch-file

我有一个批处理文件,

bat1.bat
bat2.bat
Run Code Online (Sandbox Code Playgroud)

但它在bat1结束时停止

任何线索?

Joe*_*oey 41

用途call:

call bat1.cmd
call bat2.cmd
Run Code Online (Sandbox Code Playgroud)

默认情况下,当您从另一个控件运行批处理文件时,控件不会传回给调用文件.这就是你需要使用的原因call.

基本上,如果您有这样的批次:

@echo off
echo Foo
batch2.cmd
echo Bar
Run Code Online (Sandbox Code Playgroud)

然后它只会输出

Foo
Run Code Online (Sandbox Code Playgroud)

如果你这样写的话

@echo off
echo Foo
call batch2.cmd
echo Bar
Run Code Online (Sandbox Code Playgroud)

但是,它会输出

Foo
Bar
Run Code Online (Sandbox Code Playgroud)

因为batch2终止后,程序控制将传递回原始批处理文件.