Windows批处理文件,等待命令完成?

时间:2016-10-22 15:06:28

标签: windows batch-file wait

我似乎无法弄清楚这一点。

我正在创建一个实时网站并在线部署

批处理文件:

START cmd /K "runas /user:administrator & cd C:\users\MyName\dropbox\!!GIT_HUB_REPOS_ALL\tangycode.github.io & hexo generate & hexo serve --draft"


START /wait "" http://localhost:4000/

运行命令hexo generate & hexo serve --draft大约需要5-10秒,时间会有所不同。理想情况下,我想在http://localhost:4000

进入实际网站之前等待这种情况发生

有些原因,这个windows批处理命令会立即自动打开localhost:4000,但

2 个答案:

答案 0 :(得分:3)

我会使用/ B保持相同的进程和/ wait tot等到第一个命令完成。除非有更多命令要遵循,否则在第二行中不需要/ wait。如果这不起作用,请尝试离开cmd / K.由于runas是一个可执行文件,批处理等到它完成后,你可以一起放弃启动命令。

如果所有这些都不起作用,请插入5个ping命令,这是等待±1秒的经典方法。

<link rel="import" href="include.html">

答案 1 :(得分:0)

我会抓住这个,(完全未经测试)

@Echo Off

(Set SrcDir=%UserProfile%\dropbox\!!GIT_HUB_REPOS_ALL\tangycode.github.io)

If Not Exist "%SrcDir%\" Exit/B
Start "" /D"%SrcDir%" /Wait /B RunAs /User:administrator^
 "Cmd /C Start /Wait hexo generate & Start hexo serve --draft"

Start http://localhost:4000/