批处理上是否有比 ping 更精确的计时器?

批处理上是否有比 ping 更精确的计时器?

除了使用 ping 命令之外,还有哪些其他批量设置计时器的方法?因为 ping 不太可靠。或者可以用 vbscript 轻松完成此操作吗?

答案1

还有哪些其他方法可以在批处理文件中设置计时器?

timeout您可以在 Windows 7 或 8 中使用该命令。

延迟执行几秒钟或几分钟,以便在批处理文件中使用。

句法

TIMEOUT 延迟 [/nobreak]

钥匙

  • delay 继续之前等待的延迟时间(以秒为单位,介于 -1 和 100000 之间)。值 -1 会导致计算机无限期地等待按键(如 PAUSE 命令)

  • /nobreak 忽略用户按键。(Windows 7 或更高版本)

超时将暂停命令执行几秒钟,之后命令将继续执行而无需用户按键。如果用户在任何时候按下一个键,执行将立即恢复。

来源暂停


例子

要暂停命令处理器十秒钟,请输入:

timeout /t 10

要暂停命令处理器 100 秒并忽略任何击键,请输入:

timeout /t 100 /nobreak

要无限期暂停命令处理器直到按下某个键,请输入:

timeout /t -1

来源 Technet暂停


进一步阅读

答案2

等待时间(以毫秒为单位)(使用 Windows 自带工具)

如果等待几秒太不精确,可以使用 Windows Scripting Host 运行一行 JScript,以毫秒为单位提供等待时间。

JScript 可以从命令行或批处理文件调用。等待时间作为参数传递。

// save this line as WaitMS.js
WScript.Sleep( WScript.Arguments( 0 ) ); 

// run WaitMS.js from batch to wait e.g. 400ms
cscript.exe /nologo WaitMS.js 400

等待数秒

您可以使用超时(W7 及更高版本):

timeout /t 10

将等待10秒,您可以按任意键终止它。


timeout /t 10 /nobreak

将等待 10 秒,您只能通过按 ctrl + c 来终止


timeout /t -1

将永远等待

答案3

您也可以使用 pathping 命令来获取毫秒延迟。

pathping -p 150 -q 2 localhost >nul

还有选择命令。

choice /t 5 /D Y >nul

相关内容