标题: 俺急用啊!请看!!!!!!!!!
[打印本页]
作者: yuhaomiao
时间: 2007-1-2 03:39
标题: 俺急用啊!请看!!!!!!!!!
偶想做一个判断型的批处理:
具体想法是:判断如果当前电脑时间大于或等于23:00.则电脑启动后自动关机(我将把这个批处理放到启动项里).也就是说if time>23:00电脑根本就启动不了!
谢谢指点啊!
──────────────── 版务记录 ────────────────
执行:namejm
原标题:俺急用啊!请看!!!!!!!!!
说明:因标题过于模糊,不便于论坛的搜索和管理,请在三日内修改标题。
提示:修改标题请在当前帖的右下脚点 编辑,
修改完毕之后按 编辑帖子 即可。
处罚:因属论坛新人,暂时不予处罚;若三日之后尚未修改标题,将扣除2点积分,
以示惩罚,并由版主强制修改标题。请点击这里阅读论坛发帖规定,以避免在
今后的讨论中违规发帖。
──────────────── 版务记录 ────────────────
[
Last edited by namejm on 2007-1-2 at 10:58 AM ]
作者: youxi01
时间: 2007-1-2 03:45
试试这个?至于关机的部分自己去做了!
@echo off
if %time% gtr 23:30 (echo 已经过了时间!) else echo 时间还没到!
pause>nul
[
Last edited by youxi01 on 2007-1-2 at 03:47 AM ]
作者: yuhaomiao
时间: 2007-1-2 04:00
标题: 对!
非常感谢你啊!但是我的dos里显示else不是命令啊?:o
作者: yuhaomiao
时间: 2007-1-2 04:07
标题: 对第二楼的说的
你说的不错我把你的命令改为
@echo off
if %time% gtr 23:30 (shutdown /s /t 78) else echo 时间还没到!
pause>nul
可是dos提示俺else不是命令,而且俺想请教一下gtr是什么意思?还有最后那个pause>nul是什么意思?
非常感谢!
作者: zh159
时间: 2007-1-2 06:14
gtr:用if/?查看
pause>nul:暂停,但不显示“请按任意键继续. . .”字符
如果是纯DOS下,好像不能使用for....else....格式,而且如果是XP系统,启动XP系统时也不能使用批处理。
作者: everest79
时间: 2007-1-2 06:48
不知道你的是什么系统
作者: yuhaomiao
时间: 2007-1-2 07:02
标题: 快啊,俺的问题还未解决啊?
我用的是xp sp2系统的.现在我有想实现另一个功能!
思路是:
判断如果当前电脑时间在23:00和6:00之间.则电脑启动后自动关机(我将把这个批处理
放到启动项里).也就是说if time>23:00或者time<6:00电脑根本就启动不了!
快啊!我现在真是很急的用啊!
谢谢!
作者: 本是
时间: 2007-1-2 07:15
测试一下HOUR.COM和HOUR1.BAT。
1.输入下面几行:
e100 B4 2C CD 21 8A C5 B4 4C CD 21
rcx
0A
nHOUR.COM
w
q
存为hour.dbg
2.在DOS下,
debug<hour.dbg
3.把下面的内容存为HOUR1.BAT测试
@echo off
hour.com
if errorlevel 23 goto h23
if errorlevel 22 goto h22
if errorlevel 21 goto h21
if errorlevel 20 goto h20
if errorlevel 19 goto h19
if errorlevel 18 goto h18
if errorlevel 17 goto h17
if errorlevel 16 goto h16
if errorlevel 15 goto h15
if errorlevel 14 goto h14
if errorlevel 13 goto h13
if errorlevel 12 goto h12
if errorlevel 11 goto h11
if errorlevel 10 goto h10
if errorlevel 9 goto h09
if errorlevel 8 goto h08
if errorlevel 7 goto h07
if errorlevel 6 goto h06
if errorlevel 5 goto h05
if errorlevel 4 goto h04
if errorlevel 3 goto h03
if errorlevel 2 goto h02
if errorlevel 1 goto h01
if errorlevel 0 goto h00
echo Hour is wrong!
goto endall
:h00
echo 24 hours!
goto endall
:h01
echo 1 hour!
goto endall
:h02
echo 2 hours!
goto endall
:h03
echo 3 hours!
goto endall
:h04
echo 4 hours!
goto endall
:h05
echo 5 hours!
goto endall
:h06
echo 6 hours!
goto endall
:h07
echo 7 hours!
goto endall
:h08
echo 8 hours!
goto endall
:h09
echo 9 hours!
goto endall
:h10
echo 10 hours!
goto endall
:h11
echo 11 hour!
goto endall
:h12
echo 12 hours!
goto endall
:h13
echo 13 hours!
goto endall
:h14
echo 14 hours!
goto endall
:h15
echo 15 hours!
goto endall
:h16
echo 16 hours!
goto endall
:h17
echo 17 hours!
goto endall
:h18
echo 18 hours!
goto endall
:h19
echo 19 hours!
goto endall
:h20
echo 20 hours!
goto endall
:h21
echo 21 hour!
goto endall
:h22
echo 22 hours!
goto endall
:h23
echo 23 hours!
:endall
echo Bye.
作者: yuhaomiao
时间: 2007-1-2 07:40
标题: 呵呵
谢谢!俺想给你加分可是提示俺不能加.嘿嘿!
只能说:非常感谢,偶非常爱这个论坛!
作者: yuhaomiao
时间: 2007-1-2 07:41
标题: 啊,还有!
虽然俺看的是一塌糊涂!
作者: yuhaomiao
时间: 2007-1-2 07:57
标题: 啊啊啊啊啊啊啊
偶照着你那样做了,可是我看的是一塌糊涂啊,第三条俺能看懂,可是第一二条我真的是一点都看不懂啊!特别是我照着你那样的做,生成了一个名为HOUR的ms-dos应用程序,真不知道这三者之间有什么关系?
顺便问一下dos下的"或者"用什么符号啊?
不好意思!偶很苯的!
谢谢!
作者: 本是
时间: 2007-1-2 09:24
原理是用DOS中断的2Ch取时间功能,再将钟点放入DOS的ERRORLEVEL中。其实如果有特殊计算要求,可以设计不同的HOURx.COM,比如时间在七一时段返回1,否则返回0,等等。