如何在首个bat文件持续运行时,从该bat内按顺序启动其他bat文件
问题解决方法
原因说明
默认使用call命令调用bat脚本时,会在当前窗口同步执行,运行时会阻塞后续命令,必须等前一个调用的脚本执行完毕才会继续运行后续代码。
修改后的脚本
@echo off :: 启动BungeeCord服务 start "BungeeCord Server" /D "C:\Users\me\Desktop\BungeeCord Network\1 BungeeCord Server" "Bungee.bat" :: 启动Lobby服务 start "Lobby" /D "C:\Users\me\Desktop\BungeeCord Network\2 Lobby" "Lobby.bat" :: 启动Public Survival服务 start "Public Survival" /D "C:\Users\me\Desktop\BungeeCord Network\3 Public Survival" "Public_Survival.bat" :: 启动Hardcore Championship服务 start "Hardcore Championship" /D "C:\Users\me\Desktop\BungeeCord Network\4 Hardcore ChampionShip" "Hardcore_Championship.bat" :: 启动16_SMP服务 start "16_SMP" /D "C:\Users\me\Desktop\BungeeCord Network\5 16_SMP" "16_SMP.bat" :: 启动17_SMP服务 start "17_SMP" /D "C:\Users\me\Desktop\BungeeCord Network\6 17_SMP" "17_SMP.bat"
注意事项
- 如果你原来的第三项
Public_Survival是exe程序而非bat脚本,把对应行的.bat后缀去掉即可。 start命令后的第一个双引号内容是新窗口的自定义标题,可根据需求修改,不能省略,否则路径包含空格时会出现命令解析错误。- 使用
/D参数直接指定工作目录,无需额外执行cd命令切换路径,脚本逻辑更简洁。
内容的提问来源于stack exchange,提问作者Tavon
相关产品推荐
相关产品推荐

