@echo off
:menu
mode con cols=52 lines=19&color 3f
title 定时关机
echo.
echo %date% %time%
echo.
echo ┏┳━┳━┳━┳━┳━━━━━┳━┳━┳━┳━┳┓
echo ┣┻┳┻┳┻┳┻┳┫ 定时关机 ┣┳┻┳┻┳┻┳┻┫
echo ┣┳┻━┻━┻━┻┛━━━━━┗┻━┻━┻━┻┳┫
echo ┣┻┫ [1] 定时关机 (如:23:00 晚上11时关机)┣┻┫
echo ┣┳┫━━━━━━━━━━━━━━━━━━━┣┳┫
echo ┣┻┫ [2] 倒计时关机 (如:1小时30分钟后关机)┣┻┫
echo ┣┳┫━━━━━━━━━━━━━━━━━━━┣┳┫
echo ┣┻┫ [3] 取消关机 ┣┻┫
echo ┣┳┫━━━━━━━━━━━━━━━━━━━┣┳┫
echo ┣┻┫ [4] 退出 ┣┻┫
echo ┣┳┫━━━━━━━━━━━━━━━━━━━┣┳┫
echo ┣┻┳━┳━┳━┳ 2009-06-26 ┳━┳━┳━┳┻┫
echo ┗━┻━┻━┻━┻━━━━━━━┻━┻━┻━┻━┛
echo.
SET Choice=
SET /P Choice= 请输入您的选择:
ECHO.
IF NOT '%Choice%'=='' SET Choice=%Choice:~0,1%
IF /I '%Choice%'=='1' GOTO 001
IF /I '%Choice%'=='2' GOTO 002
IF /I '%Choice%'=='3' GOTO 003
IF /I '%Choice%'=='4' GOTO 004
GOTO menu
:001
mode con cols=52 lines=16&color 3f
title 定时关机━正常定时关机
cls
echo.
echo ┏━━━━━━━━━━━━━━━━━━┓
echo ┣ 请输入关机时间(请按格式正确输入) ┫
echo ┣ 例如输入:“23:00”(双引号内) ┫
echo ┣ 晚上11时关机,会提前30秒通知, ┫
echo ┣ 只有在显示通知时才能取消关机 ┫
echo ┗━━━━━━━━━━━━━━━━━━┛
echo.
echo 注意:请确认“Task Scheduler”服务已启动,
echo 否则无效!
echo.
echo 查看:开始→运行→输入“services.msc”→确定
echo 打开 服务面板 查看此服务是否启动。
echo.
set /p time= 请输入关机时间:
at %time% shutdown -s
cls
echo.
echo.
echo.
echo ┏━━━━━━━━━━━━━┓
echo ┣ 如果您刚才输入正确,系统 ┫
echo ┣ 将会在您指定的时间关机。 ┫
echo ┗━━━━━━━━━━━━━┛
echo.
echo 您刚才输入的是“%time%”
echo.
echo.
echo 按任意键退出
pause>nul
exit
GOTO menu
:002
mode con cols=52 lines=10&color 3f
title 定时关机━倒计时关机
cls
echo.
echo ┏━━━━━━━━━━━━━━━┓
echo ┣请输入倒计时关机时间(单位:秒) ┫
echo ┣ 例如:600 (10分钟后关机) ┫
echo ┣ 3600 ( 1小时后关机) ┫
echo ┗━━━━━━━━━━━━━━━┛
echo.
set /p sec= 请输入倒计时间:
shutdown -s -t %sec%
csl
GOTO menu
csl
:003
shutdown -a
exit
csl
:004
exit
------------------------------
我觉得这个bat不错