批处理没有 Linux 里 sleep 这个命令,但我们可以通过其他的方式来模拟 sleep 睡眠以达到延迟的目的。
方法一:使用 ping 命令
ping 命令的一个特点就是每 1 秒 ping 一次,而 -n 选项可以让我们指定 ping 远程服务器多少次。因此利用这两个特性,我们可以模拟 sleep ,代码如下:
[Plain Text] 纯文本查看 复制代码 @echo off
ping 0.0.0.0 /n 5 > nul
/n 选项指定要 ping 的次数。
> nul 表示将输出重定向到空设备,类似与 Linux 里的 /dev/null 。
方法二:使用 timeout 命令
timeout 这个工具接受超时参数,等候一段指定的时间(秒)或等按任意键。它还接受一个参数,忽视按键。
当我们想延迟 5 秒时,可以执行:
在这种情况下,命令会倒计时提示;如果在超时前按下任意键,那么延迟中断,如果不希望这样做,可以添加 /NOBREAK 选项:
这时想中途退出,那么需要按 CTRL + C 组合键。
和 ping 类似的方法,可以将提示信息重定向到 nul 中,因此有:
[Plain Text] 纯文本查看 复制代码 @echo off
echo Delay 5s
timeout /T 5 /NOBREAK > nul
pause |