标题: 关于时间和注册表的批处理
[打印本页]
作者: wfyinghun
时间: 2008-1-21 15:08
标题: 关于时间和注册表的批处理
我现在有3个注册表文件1.reg, 2.reg, 3.reg. 请高手帮我写一个批处理实现以下功能:如果时间是0点到8点则调用1.reg; 如果时间是8点到16点则调用2.reg, 如果时间是16点到24点则调用3.reg.
作者: HAT
时间: 2008-1-21 15:20
@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
)
作者: wfyinghun
时间: 2008-1-21 15:23
标题: lss 是什么东西啊?
lss 是什么东西啊?不需要额外的文件吧?
作者: wfyinghun
时间: 2008-1-21 15:28
还有,如果要精确到分钟,还能用lss吗?比如在0:45分到8:30之间运行test.reg
作者: fastslz
时间: 2008-1-21 15:35
@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
作者: wfyinghun
时间: 2008-1-21 15:41
谢谢!如果要精确到分钟,比如在0:45分到8:30之间运行test.reg ,又该怎么写啊?
作者: fastslz
时间: 2008-1-21 15:44
%time:~0,2%小时
%time:~3,2%分钟
关于 if
EQU - 等于
NEQ - 不等于
LSS - 小于
LEQ - 小于或等于
GTR - 大于
GEQ - 大于或等于
自己动手吧
作者: wfyinghun
时间: 2008-1-21 15:53
标题: 谢谢
我想问一下,类似于 LSS 这样的参数,对被比较的值有什么要求吗?一定要求是整数吗?如果是像8:45这样的时间值该怎么处理啊?
作者: HAT
时间: 2008-1-21 21:18
自己动手测试一下吧^_^
if 8:45 gtr 8:46 (echo 大于) else (echo 小于)
作者: wfyinghun
时间: 2008-1-21 23:08
标题: 终于解决了
呵呵,刚测试了,可以!! 终于解决了! thanks very much!