[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程批处理在线视频分享
返回列表 发帖

[文本处理] 如何在主.bat中调动子.bat后返回主.bat继续执行

我的批处理文件如下。我想在 主.bat 调动 子.bat 之后,继续返回主bat执行下一步(且返回主bat的过程中子bat仍然处于执行的状态)。
现在问题是我运行后,只会停留在子bat的执行窗口,并没有返回主bat。
请各位大神帮我看看哪里需要修改呗:loveliness: ~
主.bat:
------------------------------------------------------分割线
.....
echo "start to call 子 bat here"
call 子.bat
echo "Back to 主 bat"
ipmitool -I lanplus -H %IP% -U %USERID% -P %PASSWD% power reset  //下一步
.....
-----------------------------------------------------分割线
子.bat:
@echo off
echo "子 bat has been called."
mode con cols=100 lines=31
set IP=***
set USERID=***
set PASSWD=***
@echo on
ipmitool -I lanplus -H %IP% -U %USERID% -P %PASSWD% sol activate
pause>nul
exit
----------------------------------------------------分割线

测试代码-:
a.bat(主程序)
  1. @echo off
  2. echo 调用子程序
  3. call b.bat
  4. echo 返回主过程
  5. pause
复制代码
b.bat(子程序)
  1. @echo off
  2. echo 子过程执行中……
  3. rem 若用call调用子程序,此处结尾用exit,会终止包括主程序的所有过程
复制代码
测试结果


测试代码二:
a.bat(主程序)
  1. @echo off
  2. echo 调用子程序
  3. start /b /wait b.bat
  4. echo 返回主过程
  5. pause
复制代码
b.bat(子程序)
  1. @echo off
  2. echo 子过程执行中……
  3. exit
  4. rem 由start调用,结尾必须有exit,否则无法退出子过程
复制代码
测试结果同上。
附件: 您需要登录才可以下载或查看附件。没有帐号?注册

TOP

回复 2# yhcfsr


    所以我只需要把子程序的exit 改成rem就好了吗

TOP

返回列表