批处理 定时自动关机程序

来源:百度知道 编辑:UC知道 时间:2024/05/26 18:32:06
我的思路是这样的:
使用两个批处理task.BAT和shutdown.BAT来实现定时自动关机
task.BAT已加入注册表中RUN项,开机自动运行。task.BAT的
作用是将shutdown.BAT的内容列入计划任务。shutdown.BAT的内容是定
时关机,关机前有120秒倒数提示,且可以在120秒内选择取
消关机,如超时没有操作则默认关机。

下面是我写的两个批处理,虽然可以实现关机但是美中不足的是
当关机时shutdown.BAT的内容不会显示,也就是没有提示就关机了,还有
就是没有倒数的效果,请高手按我的上述思路指点下!

task.BAT
------------------------------
@echo off
at 23:20 F:\路径\shutdown.bat
@echo off

-------------------------------
shutdown.BAT
----------------------------------
@ echo off
color b
mode con: cols=45 lines=25
echo.
@ at 23:20 shutdown -s -t 120

echo. =============================
echo. 定时自动关机程序
echo. =============================

echo. --------------------------------------------
echo. 系统将在120秒后关机,请保存所有工作然后退出....
pause
cls

@echo off

一个就够了,添加到启动项.有窗口.动态显示时间.按任意键取消.如果你不想看到系统弹出的那个关机对话框的话我可以把它去掉.

@echo off
if not "%~1"=="" goto %~1
at 23:20 /interactive "%~0" shutdown
exit
:shutdown
start "" /b %0 cancle
color b
mode con: cols=45 lines=25
set "t=120"
title 定时自动关机程序
echo wscript.sleep 5000>sleep.vbs
start "" /b shutdown.exe -s -t 120
:show
cls
echo.
echo. =============================
echo. 定时自动关机程序
echo. =============================
echo. --------------------------------------------
echo. 系统将在%t%秒后关机,请保存所有工作然后退出....
echo. --------------------------------------------
echo. 或者按任意键取消关机....
sleep.vbs
set /a t-=5
if %t% geq 0 goto show
exit
:cancle
pause>nul
shutdown.exe -a
del sleep.vbs
exit

将第二个批处理shutdown.bat修改如下:

@ echo off
color b
m