楼 主
如何产生一个24小时制的随机的时间?
发表于 2008-12-05 18:02 · 中国 广东 深圳 电信
初级用户
★★
游手好闲 + 无所事事 ..
积分 194 发帖 167 注册 2007-04-30 09:43 UID 87022 性别 男
状态 离线
如何编制一个批处理 rndtime.bat ,要求实现以下功能:
1、直接运行它,将生成一个随机时间变量 rtime,其格式为 HHMM,HH是小时,MM是分钟,其中小时是位于当前小时到23时之间。
2、若加参数 X Y,即运行 rndtime X Y后,将产生一个随机变量,其小时位于X到Y小时之间。(进阶要求,可以不考虑这个功能)
这个程序的目的,每天开机之后在后台运行,产生一个随机的时间,并根据这个时间添加一个任务。
这个时间是在开机之后的时间,这样可以保证该任务每天都能运行,而且每次启动的时间都不同,当时是用来上传ftp数据的,避免所有400个点同一时间登陆ftp造成拥堵。
一年前我写成功了,可是后来忘记了,而且当时写的有点复杂,请哪位高手写一个来讨论讨论?
第 2 楼
发表于 2008-12-05 19:39 · 中国 广西 桂林 电信
初级用户
★
积分 26 发帖 14 注册 2008-07-06 22:26 UID 121182
状态 离线
@ECHO OFF&SETLOCAL ENABLEDELAYEDEXPANSION
Set/A H=%Random%%%24
Set/A M=%Random%%%60
FOR %%i IN (M H) DO IF /I !%%i! LSS 10 Set %%i=0!%%i!
Set rtime=%H%:%M%
ECHO %rtime%
Pause
试试。
第 3 楼
发表于 2008-12-05 20:16 · 中国 广东 深圳 宝安区 电信
初级用户
★★
游手好闲 + 无所事事 ..
积分 194 发帖 167 注册 2007-04-30 09:43 UID 87022 性别 男
状态 离线
2楼写的很好!
顺便请教一下 “!”的用法?我不会用这个。
另外, SET/A 我知道是运算,可是【H=%Random%%%24】是指什么?
用随机变量 %RANDOM% 乘以 %% 再乘以24么?那么中间的%%是指什么
%***%我只知道是引用变量。
第 4 楼
发表于 2008-12-05 20:29 · 中国 广西 桂林 电信
初级用户
★
积分 26 发帖 14 注册 2008-07-06 22:26 UID 121182
状态 离线
论坛跳转:
— 请选择 —
站务公告 & 版主讨论
意见反馈 & 网友交流
DOS学习入门 & 精彩文章 (教学室)
DOS疑难解答 & 问题讨论 (解答室)
DOS启动盘 & LOGO技术 (启动盘室)
DOS批处理 & 脚本技术(批处理室)
DOS媒体世界 & 网络技术 (多媒体室)
DOS汉化世界 & 中文系统 (中文化室)
DOS开发编程 & 发展交流 (开发室)
DOS软件下载 & 游戏分享 (下载室)
GRUB4DOS、SYSLINUX及其它启动管理软件讨论专区
其它操作系统综合讨论区
WinPE、PowerShell及其它命令行系统专区
贴图灌水、文学娱乐专区
网络日志(Blog)
论坛回收站
├ 链接失效,待修正