中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-08-07 17:04
48,041 主题排行 / 350,128 发帖 / 今日 3 篇 / 48,252 会员排行
DOS批处理 & 脚本技术(批处理室) » 那位高手帮我写这样个批处理
可打印版本  750 / 13
第1楼 wfyinghun 发表于 2008-03-07 12:30
初级用户 发帖 53 积分 126
那位高手帮我写这样个批处理
那位高手帮我写这样个批处理:
(一)判断当前的星期,如果星期一,则继续如下判断:
(1)如果是08:00到08:45则执行A代码;
(2)如果是08:55到09:40则执行B代码;
(3)如果是09:50到10:30则执行C代码;
(二)如果是星期二,则继续如下判断:
(1)如果是08:00到08:45则执行D代码;
(2)如果是08:55到09:40则执行E代码;
(3)如果是09:50到10:30则执行F代码;
(二)如果是星期六或者星期天,则执行G代码。
第2楼 suntb 发表于 2008-03-07 12:47
高级用户 发帖 277 积分 581
涉及到%date%和%time%了
还得看区域选项设置中日期格式是否带星期几

先处理自己的事情 过会再来看看
第3楼 wfyinghun 发表于 2008-03-07 12:55
初级用户 发帖 53 积分 126
我的日期格式是这样的:2008-03-07 星期五
时间格式: 11:41:11.01

另外在上面的G代码里要实现这样一个功能:删除掉凡是今天建立或者修改过的可执行文件(文件夹aaa除外)!该怎么实现啊!
第4楼 suntb 发表于 2008-03-07 13:06
高级用户 发帖 277 积分 581
先发个当前日期、星期及时间显示的批,在此基础配合IF可以实现楼主的要求


[ Last edited by suntb on 2008-3-7 at 01:10 PM ]
第5楼 wfyinghun 发表于 2008-03-07 13:15
初级用户 发帖 53 积分 126
我只知道基本的循环语法,批处理的嵌套循环还不太清楚,另外怎么样判断时间在08:00到08:45之间呢?还有那个G代码怎么写呢,头都大了!
第6楼 suntb 发表于 2008-03-07 13:32
高级用户 发帖 277 积分 581
代码应该可以精简 只是按最简单的方式写的


[ Last edited by suntb on 2008-3-7 at 01:51 PM ]
第7楼 wfyinghun 发表于 2008-03-07 13:45
初级用户 发帖 53 积分 126
呵呵,Thanks!我去试试看!
第8楼 suntb 发表于 2008-03-07 13:51
高级用户 发帖 277 积分 581
删除掉凡是今天建立或者修改过的可执行文件(文件夹aaa除外)??

是在当前文件夹下吗?包含所有子文件夹?
第9楼 wfyinghun 发表于 2008-03-07 13:56
初级用户 发帖 53 积分 126
刚测试了下,跳转到F那句有点问题,不能够显示F
if "%date:~11,3%"=="星期" (
if %time:~0,5% GEQ 8:00 (if %time:~0,5% LEQ 8:45 goto :D)
if %time:~0,5% GEQ 8:55 (if %time:~0,5% LEQ 9:40 goto :E)
if %time:~0,5% GEQ 9:50 (if %time:~0,5% LEQ 13:30 goto :F)
)

:F
echo F
pause&goto :EOF


为了测试我改了2处参数,上面蓝颜色是改的!
第10楼 wfyinghun 发表于 2008-03-07 13:58
初级用户 发帖 53 积分 126
包括子文件夹里的可执行文件,但文件夹aaa不处理!
第11楼 suntb 发表于 2008-03-07 14:24
高级用户 发帖 277 积分 581
Originally posted by wfyinghun at 2008-3-7 13:56:
刚测试了下,跳转到F那句有点问题,不能够显示F
if "%date:~11,3%"=="星期" (
if %time:~0,5% GEQ 8:00 (if %time:~0,5% LEQ 8:45 got ...


在我这正常啊 
第12楼 wfyinghun 发表于 2008-03-07 14:31
初级用户 发帖 53 积分 126
还是不行啊,
if %time:~0,5% GEQ 9:50 (if %time:~0,5% LEQ 13:30 goto :F)
不过改成这样就可以了
if %time:~0,5% GEQ 09:50 (if %time:~0,5% LEQ 13:30 goto :F)
第13楼 suntb 发表于 2008-03-07 14:51
高级用户 发帖 277 积分 581
Originally posted by wfyinghun at 2008-3-7 14:31:
还是不行啊,
if %time:~0,5% GEQ 9:50 (if %time:~0,5% LEQ 13:30 goto :F)
不过改成这样就可以了
if %time:~0,5% GEQ 09:50 (if %time: ...


要不你改为8:XX和9:XX全改为08:XX和09:XX
第14楼 wfyinghun 发表于 2008-03-07 14:56
初级用户 发帖 53 积分 126
全改成0x:xx应该可以了!
thank you very much!
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023