定时关机脚本

界面如下:

新建个文本文档,后缀改成.bat

复制代码
@echo off & color 20 & title 定时关机工具 当前时间:%time%
echo 定时关机工具
echo ------------------------------------------
echo   0.立刻关机
echo   1.设置1小时后关机 2.设置2小时后关机
echo   3.设置3小时后关机 4.设置4小时后关机
echo   5.设置5小时后关机 6.设置6小时后关机
echo   7.设置7小时后关机 8.设置8小时后关机
echo   9.设置9小时后关机 10.设置10小时后关机
echo   11.手动输入时间
echo   12.取消刚才的设置
echo ------------------------------------------

:main
echo.
set /p h=输入选项对应数字,并按Enter键确定:
echo %h% | findstr /r "[0-9]" >nul
if %errorlevel% neq 0 (echo 错误!!请输入整数 & goto main)
if %h% equ 11 goto shuru
if %h% equ 12 goto quxiao
if %h% gtr 12 (echo 无此选项,请重新输入 & goto main)
if %h% lss 0 (echo 负数,请重新输入 & goto main)
rem 以上4个if都不满足,才会执行以下4行
set /a sec=h*3600
shutdown /s /f /t %sec%
echo ---[设置成功!电脑将在%h%小时后关机!]
pause>nul & exit

:quxiao
shutdown /a
echo ------已取消定时关机 & pause>nul & exit

:shuru
echo.
echo 【子菜单】请输入几点几分,中间以空格隔开,例如22 09
set /p inputtime=请输入:
for /F "tokens=1 delims= " %%i in ("%inputtime%") do set "h2=%%i"
for /F "tokens=2 delims= " %%j in ("%inputtime%") do set "m2=%%j"
rem 获取系统当前时针和分针
for /F "tokens=1 delims=:" %%a in ("%time%") do set /a h1=%%a
for /F "tokens=2 delims=:" %%b in ("%time%") do set /a m1=%%b

rem 检查输入的时间是否是数字
echo %h2% | findstr /r "[0-9]" >nul
if %errorlevel% neq 0 (echo 错误:非数字,请重新输入 & goto shuru)
echo %m2% | findstr /r "[0-9]" >nul
if %errorlevel% neq 0 (echo 错误:非数字,请重新输入 & goto shuru)
rem 检查输入的时针和分针是否合法
if %h2% lss %h1% (echo 时间早于当前,重来 & goto shuru)
if %h2% gtr 23 (echo 时针大于23,重来 & goto shuru)
if %m2% lss 0 (echo 分针小于0,重来 & goto shuru)
if %m2% gtr 59 (echo 分针大于59,重来 & goto shuru)

rem 计算输入时间减去当前时间的差
set /a h3=%h2%-%h1%
set /a m3=%m2%-%m1%
rem 将时间差换算成分和秒
set /a minut=%h3%*60+%m3%
set /a sec1=%h3%*3600+%m3%*60
echo.
shutdown /s /f /t %sec1%
echo ---[设置成功!距离关机还有%minut%分钟]
pause>nul
相关推荐
ESDWAN1 小时前
企业组网后网络频繁掉线,常见故障排查指南
运维·网络·架构
程序员-Benothing1 小时前
Linux系统时间管理:date、timedatectl、NTP、Chrony配置
linux·运维·服务器
迪康Defender2 小时前
终端安全实践:浅谈端点安全管理系统内置终端防火墙能力
运维·服务器·网络·经验分享·安全·php·终端安全管理
AI备忘录2 小时前
(二十二)华为华三锐捷迈普思科 802.1X 端口认证配置命令(网络准入五厂商对照)
运维·服务器·开发语言·网络·安全·华为
优化Henry2 小时前
LTE站点以太网光模块告警处理实践
运维·网络·笔记·学习·信息与通信
智能运维指南2 小时前
一体化运维监控:打破工具孤岛,实现监控运维一体化
运维·嘉为蓝鲸·一体化运维监控·全栈智能可观测中心
明王明王2 小时前
PVE 上用 SPICE:统一连接 Debian、Arch 和 Windows 11 桌面
运维·windows·debian
数字新视界2 小时前
2026机房动环监控选型指南:场景规模需求、市场发展占有率和竞争梯队报告解析
大数据·运维·网络·人工智能·嵌入式硬件·机房动环监控·机房环境安全
咯哦哦哦哦2 小时前
配置VNC sever 6.11.0版本 linux(激活码)
linux·运维·服务器