中国DOS联盟论坛

中国DOS联盟

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

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

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
作者:
标题: 关于时间和注册表的批处理 上一主题 | 下一主题
wfyinghun
初级用户





积分 126
发帖 53
注册 2007-4-3
状态 离线
『楼 主』:  关于时间和注册表的批处理


我现在有3个注册表文件1.reg,  2.reg,  3.reg.  请高手帮我写一个批处理实现以下功能:如果时间是0点到8点则调用1.reg;  如果时间是8点到16点则调用2.reg,   如果时间是16点到24点则调用3.reg.


2008-1-21 15:08
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
HAT
版主





积分 9023
发帖 5017
注册 2007-5-31
状态 离线
『第 2 楼』:  


@echo off
if %time:~0,2% lss 8 (
  reg import 1.reg
) else if %time:~0,2% lss 16 (
  reg import 2.reg
) else if %time:~0,2% lss 24 (
  reg import 3.reg
)


2008-1-21 15:20
查看资料  发短消息 网志   编辑帖子  回复  引用回复
wfyinghun
初级用户





积分 126
发帖 53
注册 2007-4-3
状态 离线
『第 3 楼』:  lss 是什么东西啊?

lss 是什么东西啊?不需要额外的文件吧?

2008-1-21 15:23
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
wfyinghun
初级用户





积分 126
发帖 53
注册 2007-4-3
状态 离线
『第 4 楼』:  

还有,如果要精确到分钟,还能用lss吗?比如在0:45分到8:30之间运行test.reg

2008-1-21 15:28
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
fastslz
铂金会员

DOS一根葱


积分 5493
发帖 2315
注册 2006-5-1
来自 上海
状态 离线
『第 5 楼』:  


@echo off
:begin
if %time:~0,2% lss 8 regedit /s 1.reg
if %time:~0,2% geq 8 if %time:~0,2% lss 16 regedit /s 2.reg
if %time:~0,2% geq 8 if %time:~0,2% geq 16 if %time:~0,2% leq 23 regedit /s 3.reg
ping/n 100 127.1>nul
goto begin
想隐藏窗口
@echo off
if "%1" == "h" goto begin
mshta vbscript:createobject("wscript.shell").run("""%~nx0"" h",0)(window.close)&&exit
:begin
if %time:~0,2% lss 8 regedit /s 1.reg
if %time:~0,2% geq 8 if %time:~0,2% lss 16 regedit /s 2.reg
if %time:~0,2% geq 8 if %time:~0,2% geq 16 if %time:~0,2% leq 23 regedit /s 3.reg
ping/n 100 127.1>nul
goto begin




第一高手    第二高手

2008-1-21 15:35
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
wfyinghun
初级用户





积分 126
发帖 53
注册 2007-4-3
状态 离线
『第 6 楼』:  

谢谢!如果要精确到分钟,比如在0:45分到8:30之间运行test.reg ,又该怎么写啊?

2008-1-21 15:41
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
fastslz
铂金会员

DOS一根葱


积分 5493
发帖 2315
注册 2006-5-1
来自 上海
状态 离线
『第 7 楼』:  

%time:~0,2%小时
%time:~3,2%分钟
关于 if
    EQU - 等于
    NEQ - 不等于
    LSS - 小于
    LEQ - 小于或等于
    GTR - 大于
    GEQ - 大于或等于
自己动手吧



第一高手    第二高手

2008-1-21 15:44
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
wfyinghun
初级用户





积分 126
发帖 53
注册 2007-4-3
状态 离线
『第 8 楼』:  谢谢

我想问一下,类似于 LSS 这样的参数,对被比较的值有什么要求吗?一定要求是整数吗?如果是像8:45这样的时间值该怎么处理啊?

2008-1-21 15:53
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
HAT
版主





积分 9023
发帖 5017
注册 2007-5-31
状态 离线
『第 9 楼』:  

自己动手测试一下吧^_^
if 8:45 gtr 8:46 (echo 大于) else (echo 小于)


2008-1-21 21:18
查看资料  发短消息 网志   编辑帖子  回复  引用回复
wfyinghun
初级用户





积分 126
发帖 53
注册 2007-4-3
状态 离线
『第 10 楼』:  终于解决了

呵呵,刚测试了,可以!!   终于解决了! thanks very much!

2008-1-21 23:08
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复

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


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



论坛跳转: