考虑两个 bat 文件。
echo Before
inner.bat
echo After
echo Inner
goto :eof
当我执行 outer.bat 时,“After”未被回显。所以内部脚本中的“goto:eof”会终止外部脚本。
在不修改 inner.bat 的情况下调用 inner.bat 后,我可以重写 outer.bat 继续执行吗?
答案 0 :(得分:4)
批处理文件具有单个执行上下文。当您嵌套这样的批处理文件调用时,嵌套文件将完全替换外部/父批处理文件的上下文。没有记录说有一个父批处理文件,因此您只需在内部文件完成时返回提示。
为了能够返回外部批处理文件,您必须执行
echo Before
call inner.bat
echo After