Windows 批次档中产生延时效果

Windows 批次档中产生延时效果

Windows 中撰写批次档时会需要等一段时间后再执行程式,像我用批次档挂载网路磁碟后,必需要再网路磁碟里面执行某个程式时,丹尼会等约3秒让它挂载顺利后再执行程式。

要让批次档中产生延时效果丹尼提供几个Windows内建的程式,利用程式的特性产生以秒为单位的延时功能。

Ping

Ping提供测试封包是否有传达到指定的主机IP,使用参数n让Ping产生1次封包测试及参数w每次等候时间1000毫秒的组合产生1秒的延时,

ping 127.0.0.1 -n 1 -w 1000

秒数要增加时变更参数n的值,例如要延时5秒就改成:

ping 127.0.0.1 -n 5 -w 1000

Timeout

这个命令在Windows Vista之后才提供的,所以Windows Vista/7/8/10执适用,除之外外像Windows XP就请使用Ping的方式。第一次使用执行

timeout /?

此命令会列出参数使用方式,参数非常的简单又少,等下会使用到参数T

TIMEOUT [/T] timeout [/NOBREAK]

描述:
    这个公用程式接受逾时参数,等候指定的时间长度
    (单位是秒数) 或等到按了键以后。
    它同时也接受参数。

参数清单:
    /T        timeout       指定等候的秒数。
                            有效范围介于 -1 和 99999 秒之间。

    /NOBREAK                略过按键,等候指定的时间长度。

    /?                      显示这个说明讯息。

注意事项: 等候逾时的值如果是 -1 则表示一直等候按键。

范例:
    TIMEOUT /?
    TIMEOUT /T 10
    TIMEOUT /T 300 /NOBREAK
    TIMEOUT /T -1

范例使用timeout产生延时1秒

timeout /t 1

执行后结果会有进行倒数提示,如下:

等候 1 秒后,请按任何一个键继续…

范例中能看到提示上有写请按任何一个键继续…,代表你可以按任何一键就能让延时的秒数失效,所以再增加NOBREAK让它真正的要等到秒数到时才能离开

timeout /t 1 /nobreak

执行后,如果要强制取消必需要按下组合键CTRL + C

等候 1 秒后,按 CTRL+C 结束…

参考资料

更新日志

日期 内容
2017/07/26 初版

关键字

  • 批次档 延时
  • 批次档 Delay
  • 批次档 Sleep
  • Batch Delay
  • Batch Sleep
  • 批次档 暂停 Sleep Delay