bat定时关机脚本
有时因为测试或者其他原因,需要电脑在人不在的时候依旧开着,但又不希望一直开着,这时希望能有一个简单的定时关机方法。网上有很多相关的软件,这里提供一个bat脚本实现的方法。
@echo off ::使用set进行设置变量,并使用/p参数让命令暂停运行,提供用户在cmd窗口输入变量的机会 set ht=%time:~0,2% set mt=%time:~3,2% set st=%time:~6,2% set h=0 set m=0 set s=0 set var=0 set cmd=0 set /p cmd=输入命令,a:取消关机,y:继续关机 if %cmd% EQU a goto cancel set /p var=请输入关机时间(以秒计) ::/a表示进行数据计算 set /a h=%m%/3600 set /a m=%var%/60-%h%*60 set /a s=%var%-%m%*60-%h%*3600 ::当前秒数st加上换算后的秒数s set /a st=%st%+%s% ::当前的分钟数mt加上换算后的分钟数m再加上st中转换出的分钟数 set /a mt=%mt%+%m%+%st%/60 ::将秒数中60的倍数转换为分钟,余下的作为当前的秒数st set /a st=%st%-(%st%/60)*60 ::当前的小时数ht加上换算后的小时数h再加上mt中转换出的小时数 set /a ht=%ht%+%h%+%mt%/60 ::将分钟数中60的倍数转换为小时,余下的作为当前的分钟数mt set /a mt=%mt%-(%mt%/60)*60 if %ht% LEQ 9 set ht=0%ht% if %mt% LEQ 9 set mt=0%mt% if %st% LEQ 9 set st=0%st% if %h% LEQ 9 set h=0%h% if %m% LEQ 9 set m=0%m% if %s% LEQ 9 set s=0%s% shutdown -s -t %var% echo 电脑将在%date:~0,4%-%date:~5,2%-%date:~8,2% %ht%:%mt%:%st%关机(即%h%时%m%分%s%秒后关机) goto end :cancel shutdown -a echo 已经取消关机 :end pause直接将该代码保存为bat脚本执行即可。