如何在批处理 bat cmd 运行时 延时 等待 ?

2025-09-20 20:55:06

1、[方法1]

在windows vista及以上系统中,系统提供了一个“timeout”命令。优点:方便,一行命令搞定。缺点:不能在旧系统中(例如xp)使用,且延时精度较低(1秒)。

2、-----命令帮助↓-----

TIMEOUT [/T] timeout [/NOBREAK]

描述:

这个工具接受超时参数,等候一段指定的时间(秒)或等按任意键。它还接受一个参数,忽视按键。

参数列表:

/T timeout 指定等候的秒数。有效范围从 -1 到 99999 秒。

/NOBREAK 忽略按键并等待指定的时间。

/? 显示此帮助消息。

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

3、示例1:

::下面这条命令会等待10秒,并且可以按任意键跳过等待

TIMEOUT /T 10

如何在批处理 bat cmd 运行时 延时 等待 ?

4、示例2:

::下面这条命令会等待300秒,并且只能按下CTRL+C来跳过

TIMEOUT /T 300 /NOBREAK

如何在批处理 bat cmd 运行时 延时 等待 ?

5、示例3:

::下面这条命令会持续等待,直到你按下任意按键.功能类似于pause

TIMEOUT /T -1

如何在批处理 bat cmd 运行时 延时 等待 ?

6、示例4:

::下面这条命令会持续等待,直到你按下CTRL+C按键

TIMEOUT /T -1 /NOBREAK

如何在批处理 bat cmd 运行时 延时 等待 ?

1、[方法2]

使用vbs的sleep方法来实现延时(等待)。优点:能在旧系统中(例如xp)使用,且延时精度较高(1毫秒)缺点:代码行数较多,3行。

2、示例:

-----代码↓-----

echo CreateObject("Scripting.FileSystemObject").DeleteFile(WScript.ScriptFullName) >%Temp%\Wait.vbs

echo wscript.sleep ▲ >>%Temp%\Wait.vbs

start /wait %Temp%\Wait.vbs

-----代码↑-----

注意:其中的“▲”为等待的毫秒数,1秒=1000毫秒,等待10000毫秒,即10秒。

当然,也可以使用并行符号“&”,把命令并成一行

-----代码↓-----

echo createobject("scripting.filesystemobject").deletefile(wscript.scriptfullname) >%temp%\VBScriptWait.vbs& echo wscript.sleep ▲ >>%temp%\VBScriptWait.vbs& start /wait %temp%\VBScriptWait.vbs

-----代码↑-----

效果相同

如何在批处理 bat cmd 运行时 延时 等待 ?

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢