上周写了个简单的命令行脚本,用来给WindowsXP定时关机。因为自己和朋友们挂冒险岛的时候需要让它自动下线关机(我以前都是在控制台自己敲命令的,可我很多朋友不会用起来也不方便直观),所以我就写了一个!
正如我在脚本里写的一样:“其实这个脚本没有什么技术含量的,写它主要是为了练练手,而且还可以方便朋友们。晚辈始终抱着学习的态度,还请高人们多加指点和批评,不要见笑!”
一、首先简单介绍一下脚本中用到的核心命令:
1
.
shutdown -s -f -t xx
-s
关闭本地计算机。
-f
强制运行要关闭的应用程序。
-t xx
将用于系统关闭的定时器设置为
xx
秒。默认值是
20
秒。
2
.
shutdown –a
-a
中止关闭。除了
-l
和
ComputerName
外,系统将忽略其它参数。在超时期间,您只可以使用
-a
。
3
.
shutdown –i
-i
显示图形界面(这是微软未公开的参数)
4
.
set /p variable=string
/p
将
variable
的值设置成输入行。
variable
指定需要设置或修改的变量。
string
指定要与指定变量关联的字符串。
二、定时关机脚本
v10.cmd
@echo off
REM /************以下为预处理部分************/
title Windows PowerOff Timer V1.0
color F2
REM /************用户界面与菜单项************/
:begin
cls
echo.
echo **********************************************************
echo 此批处理脚本用来设置Windows定时关机 by Sch. 2007年11月10日
echo **********************************************************
echo.
echo ------ 系统关机定时器 V1.0 (Windows PowerOff Timer) ------
echo.
echo.
echo 请选择需要执行的功能:
echo.
echo [1]:启动标准倒计时关机任务;
echo [2]:终止当前倒计时关机任务;
echo [3]:使用高级选项(不推荐);
echo [4]:查看"功能介绍";
echo [5]:查看"使用说明";
echo [6]:查看"关于界面";
echo.
set /p choice=请输入相应序号:
echo.
echo.
goto %choice%
REM /**********以下为功能的实现部分***********/
REM /*[1]:启动标准倒计时关机任务*/
:1
echo ----------------------------------------------------------
echo.
echo 正在启动标准倒计时关机任务...
set /p cdtime=请您输入以秒计的倒计时时间(秒):
shutdown -s -f -t %cdtime% -c " Powered by 系统关机定时器 V1.0"
goto end
REM /*[2]:终止当前倒计时关机任务*/
:2
echo ----------------------------------------------------------
echo 正在终止当前倒计时关机任务...
echo.
shutdown -a
goto end
REM /*[3]:使用高级选项(不推荐)*/
:3
echo ----------------------------------------------------------
echo 正在打开高级选项...
echo.
shutdown -i
goto end
REM /*[4]:查看"功能简介"*/
:4
echo ----------------------------------------------------------
echo.
(此处内容已省略)
echo.
echo.
pause
goto begin
REM /*[5]:查看"使用说明"*/
:5
echo ----------------------------------------------------------
echo.
(此处内容已省略)
echo.
echo.
pause
goto begin
REM /*[6]:查看"关于界面"*/
:6
echo ----------------------------------------------------------
echo.
echo 关于:
echo.
echo.
(此处内容已省略)
echo.
echo.
pause
goto begin
REM /***********以下为脚本结尾部分***********/
:end
REM /************以下为预处理部分************/
title Windows PowerOff Timer V1.0
color F2
REM /************用户界面与菜单项************/
:begin
cls
echo.
echo **********************************************************
echo 此批处理脚本用来设置Windows定时关机 by Sch. 2007年11月10日
echo **********************************************************
echo.
echo ------ 系统关机定时器 V1.0 (Windows PowerOff Timer) ------
echo.
echo.
echo 请选择需要执行的功能:
echo.
echo [1]:启动标准倒计时关机任务;
echo [2]:终止当前倒计时关机任务;
echo [3]:使用高级选项(不推荐);
echo [4]:查看"功能介绍";
echo [5]:查看"使用说明";
echo [6]:查看"关于界面";
echo.
set /p choice=请输入相应序号:
echo.
echo.
goto %choice%
REM /**********以下为功能的实现部分***********/
REM /*[1]:启动标准倒计时关机任务*/
:1
echo ----------------------------------------------------------
echo.
echo 正在启动标准倒计时关机任务...
set /p cdtime=请您输入以秒计的倒计时时间(秒):
shutdown -s -f -t %cdtime% -c " Powered by 系统关机定时器 V1.0"
goto end
REM /*[2]:终止当前倒计时关机任务*/
:2
echo ----------------------------------------------------------
echo 正在终止当前倒计时关机任务...
echo.
shutdown -a
goto end
REM /*[3]:使用高级选项(不推荐)*/
:3
echo ----------------------------------------------------------
echo 正在打开高级选项...
echo.
shutdown -i
goto end
REM /*[4]:查看"功能简介"*/
:4
echo ----------------------------------------------------------
echo.
(此处内容已省略)
echo.
echo.
pause
goto begin
REM /*[5]:查看"使用说明"*/
:5
echo ----------------------------------------------------------
echo.
(此处内容已省略)
echo.
echo.
pause
goto begin
REM /*[6]:查看"关于界面"*/
:6
echo ----------------------------------------------------------
echo.
echo 关于:
echo.
echo.
(此处内容已省略)
echo.
echo.
pause
goto begin
REM /***********以下为脚本结尾部分***********/
:end
其中:
set /p choice=
请输入相应序号:
goto %choice%
便于用户选择功能,其输入内容就是下面的
LABLE
值。
set /p cdtime=
请您输入以秒计的倒计时时间
(
秒
):
shutdown -s -f -t %cdtime%
让用户输入
shutdown
命令的超时(倒计时)时间。
三、心得体会:
其实写这个脚本我查了很多资料,但最后总结提取出来只有上面一点,脚本调试也花了不少时间,总之我学到了
shutdown
命令的用法和用户交互命令
set /p
在批处理中的灵活应用!
shutdown
命令用于
NT
系统的关机,经测试发现不加