标题: [文本处理] 如何在主.bat中调动子.bat后返回主.bat继续执行 [打印本页]
作者: kat、 时间: 2018-1-11 11:45 标题: 如何在主.bat中调动子.bat后返回主.bat继续执行
我的批处理文件如下。我想在 主.bat 调动 子.bat 之后,继续返回主bat执行下一步(且返回主bat的过程中子bat仍然处于执行的状态)。
现在问题是我运行后,只会停留在子bat的执行窗口,并没有返回主bat。
请各位大神帮我看看哪里需要修改呗 ~
主.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
----------------------------------------------------分割线
作者: yhcfsr 时间: 2018-1-11 12:36
测试代码-:
a.bat(主程序)- @echo off
- echo 调用子程序
- call b.bat
- echo 返回主过程
- pause
复制代码
b.bat(子程序)- @echo off
- echo 子过程执行中……
- rem 若用call调用子程序,此处结尾用exit,会终止包括主程序的所有过程
复制代码
测试结果
测试代码二:
a.bat(主程序)- @echo off
- echo 调用子程序
- start /b /wait b.bat
- echo 返回主过程
- pause
复制代码
b.bat(子程序)- @echo off
- echo 子过程执行中……
- exit
- rem 由start调用,结尾必须有exit,否则无法退出子过程
复制代码
测试结果同上。
作者: kat、 时间: 2018-1-11 13:44
回复 2# yhcfsr
所以我只需要把子程序的exit 改成rem就好了吗
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |