[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[其他] 新手:系统定时关机批处理 问题求助

昨晚心血来潮,学习批处理,自己写了一个系统定时关机的批处理:shut1.bat
内容如下:
  1. @echo off
  2. echo.
  3. echo                         ===定时关机批处理,By:龙海===
  4. echo.
  5. echo 本程序为对电脑执行定时关机操作
  6. echo.
  7. echo 1 执行定时关机(关机时间以秒为单位,假设:输入3600 等于执行一小时之后关机)
  8. echo.
  9. echo 2 取消定时关机
  10. echo.
  11. echo 3 打开百度(我是打酱油的)
  12. echo.
  13. echo 4 退出
  14. echo.
  15. :loop
  16. set /p key=输入选择的项目的序号并按回车键执行:
  17. if %key% equ 1 (
  18. echo.
  19. set /p var=请输入关机时间:
  20. shutdown -s -f -t %var%
  21. echo. & echo 定时关机成功
  22. goto end
  23. )
  24. if %key% equ 2 (
  25. shutdown -a
  26. echo. & echo 取消定时关机
  27. goto end
  28. )
  29. if %key% equ 3 (
  30. start www.baidu.com
  31. goto end
  32. )
  33. if %key% equ 4 (
  34. goto end
  35. )
  36. if %key% gtr 4 (
  37. echo.
  38. goto loop
  39. )
  40. :end
  41. echo. & pause
复制代码
测试时:出现以下结果(定时关机失败,显示的是shutdown 命令的使用说明)


请问:这是什么问题,又该怎么解决?
请各路大神帮帮忙哈

if %key% equ 1 (
        echo.
        set /p var=请输入关机时间:
        setlocal enabledelayedexpansion
        shutdown -s -f -t !var!
        endlocal
        echo. & echo 定时关机成功
        goto end
)

变量延迟

TOP

shutdown -s -f -t %var%
改成
call shutdown -s -f -t %%var%%

TOP

回复 3# zhanglei1371


谢谢啊,按照您的方法确实可以运行了。
大神,这是为什么呢,为什么要用这种方法?

TOP

回复 2# hu_contact

按照您的方法,可以运行了,请问:
为什么启用变量延迟就可以了呢?

TOP

回复 5# bat菜鸟


    http://bbs.bathome.net/thread-2899-1-1.html

TOP

返回列表