小编典典

如何在批处理脚本中等待?

all

我正在尝试编写一个批处理脚本并尝试在 2 个函数调用之间等待 10 秒。命令:

sleep 10

不让批处理文件等待 10 秒。

我正在运行 Windows XP。


阅读 79

收藏
2022-08-08

共1个答案

小编典典

您可以 ping 一个不存在的地址并指定所需的超时时间:

ping 192.0.2.2 -n 1 -w 10000 > nul

由于地址不存在,它会等待 10,000 毫秒(10 秒)然后返回。

  • -w 10000部分以毫秒为单位指定所需的超时。
  • -n 1部分告诉 ping 它应该只尝试 一次 (通常它会尝试 4 次)。
  • > nul部分已附加,因此 ping 命令不会向屏幕输出任何内容。

您可以通过在 PATH 中的某处创建 sleep.bat 并使用上述技术轻松地自己制作睡眠命令:

rem SLEEP.BAT - sleeps by the supplied number of seconds

@ping 192.0.2.2 -n 1 -w %1000 > nul

注意(2020 年 9 月): 根据RFC
3330
保留 192.0.2.x
地址,因此它在现实世界中绝对不存在。引用规范:

192.0.2.0/24 - 此块被分配为“TEST-NET”,用于文档和示例代码。在供应商和协议文档中,它通常与域名 example.com
example.net 结合使用。此块内的地址不应出现在公共互联网上。

2022-08-08