批处理文件:延迟执行启动而不暂停脚本的其余部分
batch file : execute start with a delay without pausing the rest of the script
我制作了一个批处理文件,需要在本地主机上打开浏览器并启动一个 java 程序。
目前的简化版本是:
start "" http://localhost
java -start_java_program
这工作正常,但浏览器现在已经在 java 完成启动本地服务器之前启动。所以你得到一个未找到的页面。
我无法在 java
命令之后执行 start
命令,因为 java 一直从 .bat 文件执行。
理想情况下,我希望调用 start 时延迟 5 秒,并且仍然继续执行脚本并调用 java。所以睡眠和超时之类的东西对我不起作用,因为 java 不会比
更好地启动
有人知道这样做的方法吗?
谢谢!
如果您使用 "start" 它将启动一个新命令 window
例如
start java -start_java_program
然后您可以等待所需的时间
例如,
timeout /T 10
等待 10 秒
然后启动浏览器
start "" delayedstart.bat 10 http://localhost
其中delayedstart.bat
是
@echo off
setlocal
timeout /t %1 >nul
start "" %2
我没试过,但应该可以...
这基本上是 ,但没有额外的批处理文件。我还将 /B
选项添加到初始 START 命令 - 不需要出现第二个控制台。
@echo off
start "" /b cmd /c "timeout /nobreak 10 >nul & start "" http://localhost"
echo java -start_java_program
我制作了一个批处理文件,需要在本地主机上打开浏览器并启动一个 java 程序。
目前的简化版本是:
start "" http://localhost
java -start_java_program
这工作正常,但浏览器现在已经在 java 完成启动本地服务器之前启动。所以你得到一个未找到的页面。
我无法在 java
命令之后执行 start
命令,因为 java 一直从 .bat 文件执行。
理想情况下,我希望调用 start 时延迟 5 秒,并且仍然继续执行脚本并调用 java。所以睡眠和超时之类的东西对我不起作用,因为 java 不会比
更好地启动有人知道这样做的方法吗?
谢谢!
如果您使用 "start" 它将启动一个新命令 window
例如
start java -start_java_program
然后您可以等待所需的时间 例如,
timeout /T 10
等待 10 秒
然后启动浏览器
start "" delayedstart.bat 10 http://localhost
其中delayedstart.bat
是
@echo off
setlocal
timeout /t %1 >nul
start "" %2
我没试过,但应该可以...
这基本上是 /B
选项添加到初始 START 命令 - 不需要出现第二个控制台。
@echo off
start "" /b cmd /c "timeout /nobreak 10 >nul & start "" http://localhost"
echo java -start_java_program