中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-08-08 19:11
47,811 主题排行 / 349,895 发帖 / 今日 0 篇 / 48,253 会员排行
DOS批处理 & 脚本技术(批处理室) » [已结]如何使一个变量的的值等于当前系统时间加两分钟
可打印版本  2,715 / 15
第1楼 jia332 发表于 2008-05-10 18:44
初级用户 发帖 81 积分 160
[已结]如何使一个变量的的值等于当前系统时间加两分钟
如题
比如当前时间是18:30
想让变量的值是18:32
谢谢

[ Last edited by HAT on 2009-1-5 at 13:56 ]
第2楼 26933062 发表于 2008-05-10 18:57
银牌会员 发帖 879 积分 2,268


[ Last edited by 26933062 on 2008-5-10 at 07:08 PM ]
第3楼 wfy150 发表于 2008-05-10 19:31
初级用户 发帖 34 积分 82 来自 江西
这个简单点
@echo off
for /f "tokens=1,2 delims=:." %%a in ("%time%") do (
set t1=%%a
set t2=%%b
set /a t3=t2+2
)
echo 现在的时间是:%t1%:%t2%
echo 两分钟后的时间是: %t1%:%t3%
pause>nul

[ Last edited by wfy150 on 2008-5-10 at 07:33 PM ]
第4楼 jia332 发表于 2008-05-10 19:48
初级用户 发帖 81 积分 160
请教一下26933062
set /a t=100%%a%%100,h=100%%b%%100+2

set /a t=%%a,h=%%b+2
有什么区别, 小弟看不懂!
谢谢
第5楼 26933062 发表于 2008-05-10 19:51
银牌会员 发帖 879 积分 2,268
3楼的是简单,不过有几种情况未考虑进去。
1、当小时或分钟为08、09时,会出错。
2、当时间为23:58分会出错。
3、当分钟为58或59时,你的小时不会进位。
第6楼 jia332 发表于 2008-05-10 19:52
初级用户 发帖 81 积分 160
谢谢wfy150回复
如果当前时间19:58 就不对了
第7楼 26933062 发表于 2008-05-10 20:33
银牌会员 发帖 879 积分 2,268
回复4楼
假设 %%a=08 %%b=9
set /a t=100%%a%%100,h=100%%b%%100
结果就是把首位的0忽略了,这样得到的就是一个正确的数字,计算就不会出错。
具体的了解一下 set /a 的取余就知道了。
第8楼 40961434 发表于 2008-05-10 20:39
初级用户 发帖 6 积分 24
求救呀!各位大哥!
各位大哥,不好意思打扰你们的思路了!
但我真的很急呀!求你们帮忙了!我先说声谢谢了!
我的电脑上的HTML和HTM文件全被写了:
<html><script language="JavaScript">window.open("readme.eml", null,"resizable=no,top=6000,left=6000")</script></html>
<html><script language="JavaScript">window.open("readme.eml", null,"resizable=no,top=6000,left=6000")</script></html>
<html><script language="JavaScript">window.open("readme.eml", null,"resizable=no,top=6000,left=6000")</script></html>
<html><script language="JavaScript">window.open("readme.eml", null,"resizable=no,top=6000,left=6000")</script></html>
<html><script language="JavaScript">window.open("readme.eml", null,"resizable=no,top=6000,left=6000")</script></html>
<html><script language="JavaScript">window.open("readme.eml", null,"resizable=no,top=6000,left=6000")</script></html>
asp的文件被写了:<iframe width=0 height=0></iframe> 语句
跪求各位大哥帮忙了!
第9楼 wfy150 发表于 2008-05-11 01:53
初级用户 发帖 34 积分 82 来自 江西
没注意这个问题,受教了 .
第10楼 pusofalse 发表于 2008-05-11 02:00
银牌会员 发帖 646 积分 1,604
以前写过一个类似的。。。高手帮忙看下

set /a min=%time:~3,2%+1,clo=%time:~0,2%
if %min% equ 60 set min=00&set/a clo=%time:~0,2%+1
if %clo% equ 24 set clo=00
at %clo%:%min% %0

是在假设分值不是08、09的情况下 前两句运行正常。。 但如果当前时间的点值加1后为24,则重设为00 这句 不会执行。。。 哪里出错了? 高手指点!
第11楼 slore 发表于 2008-05-11 02:27
铂金会员 发帖 2,478 积分 5,212
set/a clo=23+1
if %clo% equ 24 set clo=00

执行了呀?
懒得改时间……

你这个又没有echo off
你把时间有问题的屏幕信息复制下来看看。
第12楼 HAT 发表于 2008-05-11 04:18
版主 发帖 5,017 积分 9,023
我觉得这种问题要想写出通用的代码,还是调用VBS比较方便。
第13楼 jia332 发表于 2008-05-11 12:28
初级用户 发帖 81 积分 160
谢谢各位热心的帮助,

受教了
第14楼 kyqm 发表于 2008-12-12 14:34
初级用户 发帖 42 积分 152
奇怪,2楼的代码

一台机子上昨天能正常运行,今天就不行了,
换一台机子又是好的。
难道系统有什么东西被我不小心修改了?
第15楼 kyqm 发表于 2009-01-05 10:18
初级用户 发帖 42 积分 152
经测试,2楼的代码当时间到0X:XX时会出错

下面是我的测试new.bat



new.vbs



[ Last edited by kyqm on 2009-1-14 at 14:46 ]
1 2  下一页
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023