Board logo

标题: 自动关机的批处理,哪个高手帮忙改进一下 [打印本页]

作者: daitu3     时间: 2006-12-28 02:42    标题: 自动关机的批处理,哪个高手帮忙改进一下

做了一个自动关机的批处理,但时间以秒为单位,比较麻烦,能否改进一下

  Quote:
@echo off
set /p time=请设置关机时间(必须以秒为单位):
SHUTDOWN -S -T %time%
@ECHO 任务完成,%time%秒后自动关闭计算机!
ping -n 1 127.0.0.1 >nul
exit


作者: lxmxn     时间: 2006-12-28 03:17

  改进哪些东西呢?说具体一点。

作者: applecy     时间: 2006-12-28 03:36
直接用-t指定时间不就好了?

不过我不明白最后为什么要用ping -n 1 127.0.0.1呢?
作者: daitu3     时间: 2006-12-28 06:40


  Quote:
Originally posted by applecy at 2006-12-28 03:36 AM:
直接用-t指定时间不就好了?

不过我不明白最后为什么要用ping -n 1 127.0.0.1呢?

三楼说的不清楚。。
ping -n 1 127.0.0.1 起延时作用 啊
作者: jmz573515     时间: 2006-12-28 06:58

@echo off
set /p time=请设置关机时间(必须以分钟为单位):
set /a ftime=%time%*60
SHUTDOWN -S -T %ftime%
@ECHO 任务完成,%time%秒后自动关闭计算机!
ping -n 1 127.0.0.1 >nul
exit

作者: scriptor     时间: 2006-12-28 10:43
对不起,我改进了一下

@echo off
set /p second=请设置关机时间(以秒为单位可以的):
set /a minute=%second%*60 (这个可要可不要,就看你怎么想的)
SHUTDOWN -S -T %minute%
@ECHO 任务完成,%minute%秒后自动关闭计算机!
exit

作者: zhoung0     时间: 2006-12-28 23:15
@echo off
echo           [定时关机]
echo.
IF not EXIST %SystemRoot%\system32\shutdown.exe echo 没有发现shutdown.exe,程序将终止!& goto :end
:back
echo ------------------------------
echo 你要在几分钟之后关闭计算机?
set /p shuttime=请在提示符后输入[单位:分钟]
echo %shuttime%|findstr "^[0-9]*$" >nul
if %ERRORLEVEL% EQU 1 echo       错误!请输入数字。& goto back
if %shuttime% GTR 5100000 echo     出错了,请输入1~5100000之间。& goto back
set /a shutmiao=%shuttime%*60
shutdown -s -f  -c "计算机将在%shuttime%分钟后关闭,请及时保存你手头的工作。" -t %shutmiao%
echo.
set /p escs=是否要取消关机,是请按[Y]
echo ------------------------------
echo %escs%|findstr "^[Yy]*$" >nul
if %ERRORLEVEL% EQU 0 shutdown -a  
:end
echo 按任意键退出。
pause>nul
exit
作者: scriptor     时间: 2006-12-28 23:21
哦,好麻烦啊

呵呵

不过还是有东西学啊 "findstr",好东西啊!
作者: NaturalJ0     时间: 2006-12-28 23:49
set /a /p time=
if %time%==0 "叫他重输"
作者: applecy     时间: 2006-12-29 12:18
我有个思路``不知道行不``
判断输入的字符如果不是数字的话跳转重新输入
这样的话可以省去不少功夫``

不知道可以实现不?还望指教
作者: lxmxn     时间: 2006-12-29 13:46


  Quote:
Originally posted by applecy at 2006-12-28 23:18:
我有个思路``不知道行不``
判断输入的字符如果不是数字的话跳转重新输入
这样的话可以省去不少功夫``

不知道可以实现不?还望指教


  7楼的代码中已经有这个功能了。