中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-08-10 00:46
47,811 主题排行 / 349,897 发帖 / 今日 2 篇 / 48,255 会员排行
DOS批处理 & 脚本技术(批处理室) » [讨论]批处理能否进行数值大小的比较?
可打印版本  915 / 4
第1楼 Rulition 发表于 2008-10-09 09:25
初级用户 发帖 11 积分 26
[讨论]批处理能否进行数值大小的比较?
有一处理,可做到每天只运行一次,现在想控制它在指定时间之后运行,写了好久,没有找到[比较大小的方法],有谁知道?谢谢!

*计划任务可让批处理按时运行!
除此之外呢?主要讨论DOS大小比较的问题

:每天10:00之后可以运行(如何控制!)
set time_=%time:~0,2%
echo %time_%
set /a 24-%time_%

*我用 set /a 计算[当前时间与24]之间的差额,如果小于[24-10],则条件成立
但如何比较[当前时间-24]<[24-10]

set /? 只有:
() - 分组
! ~ - - 一元运算符
* / % - 算数运算符
+ - - 算数运算符
<< >> - 逻辑移位
- 按位“与”
^ - 按位“异”
| - 按位“或”
= *= /= %= += -= - 赋值
&= ^= |= <<= >>=
, - 表达式分隔符
第2楼 HAT 发表于 2008-10-09 09:36
版主 发帖 5,017 积分 9,023
能否把你的每天只运行一次的批处理贴出来看看?
第3楼 Rulition 发表于 2008-10-10 10:25
初级用户 发帖 11 积分 26
大意是:
如果 参数1 > 参数2 就执行一个命令,貌似 if 可以比较数值大小.

set /a 的结果能否传参?
第4楼 everest79 发表于 2008-10-10 13:25
金牌会员 发帖 1,127 积分 2,564
set命令就是为传递而生的
第5楼 zhaich 发表于 2008-10-10 15:54
新手上路 发帖 7 积分 9
比较方法还是很多的啊~
我说一个我常用的,LZ自己试着写一下,不行的话我再把代码传上来。
先将时间写为全数字的形式,如:string=153342,(15点33分42秒)
用 set /a 将该string定义为数字,
用153342减去100000(即减去10点的数字形式),与0比较,
大于0就运行,小于0就不运行。
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023