是否可以在batch file中插入定时暂停?

是否可以在DOSbatch file中插入定时暂停?

它应该像暂停命令一样,但不必按任何键,它将在X秒内自行继续。

当您不想安装任何非库存软件时,我所见过的丑陋的,但传统的解决scheme是使用PING。 如:

@echo off rem Sleep 5 seconds ping -n 6 127.0.0.1>NUL 

6是必要的,因为第一个请求几乎立即返回,大致计为“0”秒,所以你需要发送更多的x + 1请求来获得所需的延迟。

假设你不是在谈论DOSbatch file,而是Windowsbatch file:

 > timeout /? 

TIMEOUT [/ T]超时[/ NOBREAK]

描述:

此实用程序接受超时参数以等待指定的时间段(以秒为单位)或直到按下任意键。 它也接受一个参数来忽略按键。

参数列表:

 /T timeout Specifies the number of seconds to wait. Valid range is -1 to 99999 seconds. /NOBREAK Ignore key presses and wait specified time. /? Displays this help message. 

注意: 超时值-1意味着无限期地等待按键。

例子:

 TIMEOUT /? TIMEOUT /T 10 TIMEOUT /T 300 /NOBREAK TIMEOUT /T -1 

如果你的意思是“批处理”文件。 没有内置的命令; 但Win2003资源包包含一个function相同的程序。 更多信息在这里: http : //malektips.com/xp_dos_0002.html

或者,你可以这样做:

 @echo off rem Sleep 5 seconds CALL :TIMEOUT 5 ECHO Do other stuff here GOTO :END :TIMEOUT ping -n %~1 -w 1 127.0.0.1>nul EXIT /B 0 :END pause