Bat文件终止

时间:2011-09-12 21:02:15

标签: batch-file cmd

考虑两个 bat 文件。

outer.bat

echo Before
inner.bat
echo After

inner.bat

echo Inner
goto :eof

当我执行 outer.bat 时,“After”未被回显。所以内部脚本中的“goto:eof”会终止外部脚本。

在不修改 inner.bat 的情况下调用 inner.bat 后,我可以重写 outer.bat 继续执行吗?

1 个答案:

答案 0 :(得分:4)

批处理文件具有单个执行上下文。当您嵌套这样的批处理文件调用时,嵌套文件将完全替换外部/父批处理文件的上下文。没有记录说有一个父批处理文件,因此您只需在内部文件完成时返回提示。

为了能够返回外部批处理文件,您必须执行

 echo Before
 call inner.bat
 echo After