中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

中国DOS联盟论坛
现在时间是 2026-08-07 19:05
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » [求助]请帮忙编一个自动关机的批处理 查看 958 回复 3
楼 主 [求助]请帮忙编一个自动关机的批处理 发表于 2008-03-18 14:39 ·  中国 广东 肇庆 电信
新手上路
积分 14
发帖 7
注册 2007-12-17 15:56
18年会员
UID 105937
性别 男
状态 离线
请高手们帮忙编一个能实现规定时间后自动关机的批处理,具体的要求是:

双击运行批处理文件后,会提示你输入隔多久关机(即输入秒数),然后回车即可。(或者输入在几时几分关机(即输入时刻)也可。)

有点像计划任务,不知能否实现,请高手解答一下。。。。
2 发表于 2008-03-18 14:41 ·  中国 江苏 苏州 移动
银牌会员
★★★
积分 1,608
发帖 780
注册 2007-10-07 10:19
18年会员
UID 99089
性别 男
状态 离线

@echo off
net start "task scheduler" >nul 2>nul
set/p choice=无效请输入(N);开启请输入(Y)
if /i "%choice%"=="N" goto shut
if /i "%choice%"=="Y" goto start
:start
set/p time1=请输入要关机的时间:-----(24小时制如: 23:18)----
at %time1% shutdown -s -t 0
set/p time2=请输入要关机的时间:-----(24小时制如: 23:18)----
at %time2% shutdown -s -t 0
set/p time3=请输入要关机的时间:-----(24小时制如: 23:18)----
at %time3% shutdown -s -t 0
EXIT
:shut
at /del /yes
EXIT

基本模式是这样的吗??
本帖最近评分记录 (共 1 条) 点击查看详情
评分人分数时间
crab914 +1 2008-03-18 19:25
3 发表于 2008-03-18 17:06 ·  中国 湖南 株洲 电信
金牌会员
★★★★
永远的学习者
积分 3,105
发帖 1,276
注册 2008-03-08 13:00
18年会员
UID 112398
性别 男
状态 离线
我有个在用的自动关闭几台电脑的批处理,你可以借鉴下,不过你先要确定自己是不是有权限远程关闭电脑:
@echo off&color 97&mode con lines=15
ping 134.163.144.75 -n 1 >nul
if errorlevel=1 goto 2
if errorlevel=0 goto select1
:1
echo.&echo.&echo.
set /p t= 请输入你要延时的秒数(直接回车默认为60秒):
if "%t1%"=="" goto close
set t=%t1%
shutdown -s -m \\134.163.144.75 -t %t% -f
goto 11
:close
shutdown -s -m \\134.163.144.75 -t 60 -f
:11
echo.&echo.&echo.
cls
echo ******===================================================******
echo 75电脑已经成功关闭
echo ******===================================================******
pause
:2
cls
ping 134.163.144.71 -n 1 >nul
if errorlevel=1 goto select3
if errorlevel=0 goto select2
:3
echo.&echo.&echo.
cls
set /p t= 请输入你要延时的秒数(直接回车默认为60秒):
if "%t2%"=="" goto close2
set t=%t2%
shutdown -s -m \\134.163.144.71 -t %t% -f
goto 21
:close2
shutdown -s -m \\134.163.144.71 -t 60 -f
:21
echo.&echo.&echo.
cls
echo ******===================================================******
echo 71电脑已经成功关闭
echo ******===================================================******
pause
goto select3
:4
echo.&echo.&echo.
set /p t= 请输入你要延时的秒数(直接回车默认为60秒):
if "%t3%"=="" goto close3
set t=%t3%
shutdown -s -t %t% -f
:close3
shutdown -s -t 60 -f
goto :eof
:select1
cls
echo.&echo.&echo.
set/p select1= 是否确认关闭75?(1.关闭 2.不关闭):
if "%select1%"=="1" goto 1
if "%select1%"=="2" goto 2
cls
echo.&echo.&echo.
echo 输入错误!
ping /n 2 127.1 >nul
goto select1
:select2
cls
echo.&echo.&echo.
set/p select2= 是否确认关闭71?(1.关闭 2.不关闭):
if "%select2%"=="1" goto 3
if "%select2%"=="2" goto select3
cls
echo.&echo.&echo.
echo 输入错误!
ping /n 2 127.1 >nul
goto select2
:select3
cls
echo.&echo.&echo.
set/p select3= 是否确认关闭本机?(1.关闭 2.不关闭):
if "%select3%"=="1" goto 4
if "%select3%"=="2" goto :eof
cls
echo.&echo.&echo.
echo 输入错误!
ping /n 2 127.1 >nul
goto select3


[ Last edited by zw19750516 on 2008-3-18 at 05:17 PM ]
本帖最近评分记录 (共 1 条) 点击查看详情
评分人分数时间
crab914 +1 2008-03-18 19:24
4 发表于 2008-03-18 19:24 ·  中国 广东 肇庆 电信
新手上路
积分 14
发帖 7
注册 2007-12-17 15:56
18年会员
UID 105937
性别 男
状态 离线
先谢过两位了,太好了
论坛跳转: