cmd-bat批处理命令延时方法

86 篇文章 0 订阅

批处理延时启动的几个方法

 

方法一:ping

缺点:时间精度为1秒,不够精确

[vb]  view plain copy 在CODE上查看代码片 派生到我的代码片
  1. @echo off   
  2.   
  3. @ping 127.0.0.1 -n 6 >nul   
  4.   
  5. start gdh.txt  

方法二:vbs start /wait

缺点:生成临时文件

有点:时间精度为0.001秒,精度高

[vb]  view plain copy 在CODE上查看代码片 派生到我的代码片
  1. @echo off   
  2.   
  3. echo wscript.sleep 5000>sleep.vbs   
  4.   
  5. start /wait sleep.vbs   
  6.   
  7. start gdh.txt   
  8.   
  9. del /f /s /q sleep.vbs  

方法三:vbs cscript

[vb]  view plain copy 在CODE上查看代码片 派生到我的代码片
  1. @echo off   
  2. echo wscript.sleep 5000>sleep.vbs   
  3. @cscript sleep.vbs >nul   
  4. start gdh.txt   
  5. del /f /s /q sleep.vbs  

方法四:choice

优点:时间精确,CPU占用低,是最佳选择

[vb]  view plain copy 在CODE上查看代码片 派生到我的代码片
  1. @echo off   
  2. choice /t 5 /d y /n >nul   
  3. start gdh.txt  

方法五:for+set+if,时间精度为0.01秒

缺点:CPU占用高,语句过长,不常用

[vb]  view plain copy 在CODE上查看代码片 派生到我的代码片
  1. @echo off   
  2.   
  3. setlocal enableextensions   
  4.   
  5. echo %time%   
  6. call :ProcDelay 500   
  7. echo %time%   
  8. start gdh.txt   
  9. :ProcDelay delayMSec_   
  10. setlocal enableextensions   
  11. for /f "tokens=1-4 delims=:. " %%h in ("%time%") do set start_=%%h%%i%%j%%k   
  12. :_procwaitloop   
  13. for /f "tokens=1-4 delims=:. " %%h in ("%time%") do set now_=%%h%%i%%j%%k   
  14. set /a diff_=%now_%-%start_%   
  15. if %diff_% LSS %1 goto _procwaitloop   
  16. endlocal & goto :EOF  
  • 2
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值