中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net  论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS学习入门 & 精彩文章 (教学室) » [求助]批处理里的时间处理?请高手指点!
作者:
标题: [求助]批处理里的时间处理?请高手指点! 上一主题 | 下一主题
zgzjwz
初级用户




积分 227
发帖 28
注册 2004-5-15
状态 离线
『楼 主』:  [求助]批处理里的时间处理?请高手指点!

例如:在运行a.bat后,隔600秒后再运行 b.bat 应该怎么写?
请高手指教!  先谢了!!!!

2004-5-18 00:00
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
willsort
元老会员

Batchinger


积分 4432
发帖 1512
注册 2002-10-18
状态 离线
『第 2 楼』:  

Re zgzjwz:

  可以使用choice命令,不过你似乎使用的是xp系统,其中不支持此命令,可在2003中找到其代替版choice.exe。如果你打算采用此方案,我可以告诉你具体的方案,只是稍微有些复杂,大概需要十行左右的代码,不知你是否可以接受。



※ Batchinger 致 Bat Fans:请访问 [讨论]批处理编程的异类 ,欢迎交流与共享批处理编程心得!
2004-5-18 00:00
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
zgzjwz
初级用户




积分 227
发帖 28
注册 2004-5-15
状态 离线
『第 3 楼』:  

谢谢你  willsort ,我看了这个论坛的全部帖子,知道你是这方面的高手!能得到你的指教,我很荣幸 !!
你可以告诉我详细一点吗?比如:在每一行的命令后面给我加上一句解析!因为我对一些DOS命令还不太熟悉!

...............................先谢了!

2004-5-19 00:00
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
willsort
元老会员

Batchinger


积分 4432
发帖 1512
注册 2002-10-18
状态 离线
『第 4 楼』:  

Re zgzjwz:

  因为今天遇上难得的休息机会,所以对此程序做了较为详细的注解,希望对你的理解有所帮助。

  Quote:
:: 因为choice仅支持最大99秒的等待时间,所以我们需要循环调用choice
:: 此处设定choice等待时间为60, 调用10次即可等待 600 秒

@echo off
set counter=
set limit=##########

:: 以上设置循环初始条件,计数器counter为空(也就是0),上限limit为10个#
:: 以上设定将使循环执行10次,在此#仅作为循环计数单位,也可换用其它字符

echo P600S.BAT - First Version - 2004.05.19
echo 因为我手边并没有32位版choice.exe,所以只以16位版的choice.com为基础,
echo 完成暂停600秒的设计需求,二者除了运行的平台基础不同之外,可能还会有
echo 功能上些微的差异,需要你在xp环境和choice.exe支持下进行测试,我会根
echo 据你的测试结果对此程序略加修改。
echo.
echo 按任意键开始暂停
pause>nul
:loop
if [%counter%]==[%limit%] goto end
choice /t:y,60 > nul
set counter=%counter%#
cls
echo %counter%
goto loop

:: 以上设定循环体内容,计数器满足条件时跳出,否则不断循环执行choice
:: set counter=%counter%#每执行一次循环体,使计数器递增一个单位
:: choice 实现指定时间暂停的技巧概述:
::        choice 的功能为提示和接收用户键入字符,并据此设置不同的出口参数
::        因为 choice 有等待一定时间后自动应答的子功能,所以我们可以据此
::        实现暂停一定时间的功能
::         参数 /t:y,60 设置等待时间为60秒,等待时间满足后自动应答字符为y
::        因为choice缺省应答选择为y,n
::         > nul 禁止choice 提示信息的显示
::        此法的限制为:等待时间内若用户键入字符,choice将会停止计时
::        若键入y,choice将会结束执行,若不是y,则choice将始终等待键入y

:end
echo 暂停时间已到,或暂停被用户终止,按任意键结束
pause>nul
cls





※ Batchinger 致 Bat Fans:请访问 [讨论]批处理编程的异类 ,欢迎交流与共享批处理编程心得!
2004-5-19 00:00
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
Kinglion
铂金会员

痴迷DOS者


积分 5798
发帖 1924
注册 2003-6-20
来自 金獅電腦軟體工作室
状态 离线
『第 5 楼』:  

建议 willsort  常来论坛来看看,解答大家关于批处理方面的问题, willsort 在批处理绝对是高手。



熟能生巧,巧能生精,一艺不精,终生无成,精亦求精,始有所成,臻于完美,永无止境!
金狮電腦軟體工作室愿竭诚为您服务!
QQ群:8393170(定期清理不发言者)
个人网站:http://www.520269.cn
电子邮件:doujiehui@vip.qq.com
微信公众号: doujiehui
2004-5-19 00:00
查看资料  发送邮件  访问主页  发短消息 网志  OICQ (79207959)  编辑帖子  回复  引用回复
zhri
高级用户

zhri


积分 665
发帖 153
注册 2004-2-23
状态 离线
『第 6 楼』:  

感动。

太伟大了。

2004-5-19 00:00
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
zgzjwz
初级用户




积分 227
发帖 28
注册 2004-5-15
状态 离线
『第 7 楼』:  

Re willsort 谢谢!!

2004-5-20 00:00
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复

请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: