标题: [系统相关] 批处理自动关机程序 [打印本页]
作者: 初级干部 时间: 2008-6-10 22:46 标题: 批处理自动关机程序
这段代码无法运行还请斑竹帮我更正,谢谢!
- @echo off
- title 《自动关机程序》 color 17
- :start
- echo.
- echo.
- echo 请选择要进行的操作,然后按回车:
- echo.
- echo 1. 定时关机
- echo 2. 倒计时关机
- echo 3. 删除定时关机任务
- echo 4. 查看定时关机任务状态
- echo 5. 注销
- echo 6. 退出
- echo.
- :set
- SET a=
- Set /P a= 请选择要进行的操作 (1/2/3/4/5/6) ,然后按回车:
- If "%a%"=="" Goto Start
- IF NOT '%a%'=='''' SET a=%a:~0,1%
- ECHO.
- IF /I '%a%'=='1' goto 1
- IF /I '%a%'=='2' goto 2
- IF /I '%a%'=='3' goto 3
- IF /I '%a%'=='4' goto 4
- IF /I '%a%'=='5' goto 5
- IF /I '%a%'=='6' goto 6
- echo %a% 选择无效,请重新输入:
- echo.
- goto set
- :1
- echo 请输入关机时间,(如12:00:00)
- set shutdowntime=
- set /p shutdowntime=
- at %shutdowntime% tsshutdn 0 /delay:0 /powerdown >nul
- IF not errorlevel 1 goto ok
- echo %shutdowntime% 不是标准的时间格式,请重新输入
- echo.
- goto 1
- :k
- echo.
- echo 设定完毕! 按任意键继续...
- pause >nul
- cls
- goto start
- :2
- echo 您想要多少秒后关机
- echo (若设定后要取消,单击"确定"后按Ctrl+C键两次)
- set timed=
- set /p timed=输入:
- tsshutdn %timed% /delay:0 /powerdown >nul
- IF not errorlevel 1 goto ok
- echo %timed% 是无效的关机时间,请重新输入
- echo.
- goto 2
- :3
- at /del /y
- echo 定时关机任务已取消,按任意键继续...
- pause >nul
- cls
- goto start
- :4
- at
- echo 按任意键继续...
- pause >nul
- cls
- goto start
- :5
- logoff
- :6
- exit
复制代码
[ 本帖最后由 随风 于 2008-6-11 20:59 编辑 ]
作者: 随风 时间: 2008-6-11 21:10
第一、发代码请用[code] 这里写代码,可以换行[/code]把代码扩起来,否则别人不好复制你的代码去研究。
第二、代码很长时,应该把一些于错误无关的代码去掉,否则这么一大堆,谁有心思慢慢看那些没用的代码
比如你的代码中的前面那一大堆的 echo 就可以省略的。
第三、你代码中的 IF NOT '%a%'=='''' SET a=%a:~0,1% 语法错误,不知道你的本意是什么,
若是只要变量 a 的第一位,可改为 SET a=%a:~0,1% 即可。
[[i] 本帖最后由 随风 于 2008-6-11 21:13 编辑 [/i]]
作者: Batcher 时间: 2008-6-11 21:42
楼主的操作系统版本是什么?
是否开启了计划任务服务?
作者: 初级干部 时间: 2008-6-14 02:09 标题: 回复 3楼 的帖子
我的系统是XP的,没有开启计划服务,请问要开起吗?
作者: youxi01 时间: 2008-6-14 13:05
没有开启计划任务,怎么使用at呢?
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |