[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[其他] 批处理延迟时间的方法有几种?

我知道的是使用ping 和 使用 循环(for /l %%a in (1 1 500) do set /p=<nul))
ㄗs:A good programming is 99% sweat and 1% coffee!--①個亾

============ >   hi.baidu.com/novaa   <============

本帖最后由 dostt2008 于 2016-8-14 08:45 编辑

批处理的过程  运行这三条命令.应怎么设

start a.exe
start b.exe 延时大于随机60分钟而小于120分钟执行

start c.exe

(start c.exe 不要等待 随机60分钟而小于120分钟执行)


如何编呢

TOP

利用msg的方法真是没见过,不过倒是对循环延时很期待。

TOP

那个SLEEP.EXE好像确实不能运行

TOP

回复 17楼 的帖子

3楼不是说了么?再仔细看看吧。
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

先记住常用的,有难度的慢慢来

TOP

在sleep.exe中如何使用?也应该一起发来

TOP

本帖最后由 pcl_test 于 2016-8-14 10:50 编辑

回复 3# youxi01
运行后产生一个sleep.exe   是什么?

TOP

回复 13楼 的帖子

没有错误提示!改了之后点编辑帖子按钮,显示出来的还是原样!!!

TOP

回复 12楼 的帖子

编辑不了?有报错信息不?
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

晕了!怎么编辑不了啊?
应该是%time:~6,-3%

TOP

回复 10楼 的帖子

echo %time%
::显示时间为   21:10:12.23
echo %time:~6,-2%
::显示为     12.(意思是去掉前面的6个字符,再舍去后面两个,显示剩下的)
要显示秒数要%time:~6,3%把数字后面的点也去掉!

[ 本帖最后由 zjw767676 于 2009-2-11 21:18 编辑 ]

TOP

3楼介绍的方法中,第三个方法 请解释一下这句的意思set /a Start=%time:~6,2%。谢谢。%time:~6,2% 这里看不懂。

TOP

不建议用死循环的办法,和其他编程一样,这种循环的办法都会消耗大量的系统资源,支持环保拒绝浪费
1

评分人数

TOP

一点改进~~~

冒昧讲一下,youxi01第三种利用“死循环”的方法,是不是只能延迟在1分钟以内,并且精确度为1秒吧?还有一个小bug,就是在运行是会出现数字识别错误的问题,我想大概是截取的两位秒数有可能出现01,02,03...吧?
        系统时间的格式为 1:49:46.26(注:前面的1之前有一空格),是精确到10毫秒的,所以利用死循环也可以精确到10毫秒。
  1. @echo off
  2. :begin
  3. echo ===========================
  4. set /p delay=请输入需要延迟的毫秒数:
  5. set TotalTime=0
  6. set NowTime=%time%
  7. echo 程序开始时间:%NowTime%
  8. :_delay
  9. set /a minute1=1%NowTime:~3,2%-100
  10. set /a second1=1%NowTime:~-5,2%%NowTime:~-2%0-100000
  11. set NowTime=%time%
  12. set /a minute2=1%NowTime:~3,2%-100
  13. set /a second2=1%NowTime:~-5,2%%NowTime:~-2%0-100000
  14. set /a TotalTime+=(minute2-minute1+60)%%60*60000+second2-second1
  15. if %TotalTime% lss %delay% goto _delay
  16. echo 程序结束时间:%time%
  17. echo 设定延迟时间:%delay%毫秒
  18. echo 实际延迟时间:%TotalTime%毫秒
  19. goto begin
复制代码
这样可以精确到10毫秒,一点想法,有什么错误欢迎大家指出。

TOP

返回列表