中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-08-12 10:52
47,811 主题排行 / 349,897 发帖 / 今日 0 篇 / 48,256 会员排行
DOS批处理 & 脚本技术(批处理室) » 帮我弄一下关机批处理
可打印版本  897 / 3
第1楼 luuk 发表于 2010-04-19 13:24
初级用户 发帖 46 积分 69 来自 山东
帮我弄一下关机批处理
原文:
===========================================
@echo off

title 选择关机
color 3f
set /p chioce= 请输入命令\ 重启【r】\关机【s】\退出【q】
if %chioce%==r goto reboot
if %chioce%==s goto shutdown
if %chioce%==q goto end


:reboot
shutdown -r /t 10
goto rechioce

:shutdown
shutdown -s /t 10
goto rechioce

:rechioce
color f3
title 要取消关机吗
set chioce=
set /p chioce=取消关机【c】
if %chioce%==c goto cancle
goto end

:cancle
cls
shutdown -a
goto end

:end
exit
=========================================

在执行第一个选择命令是,敲入"e"等其他字母(不是q r s ),也会跳出关机提示,不是应该报错吗?
第2楼 slore 发表于 2010-04-19 13:31
铂金会员 发帖 2,478 积分 5,212
代码依次执行

if %chioce%==r goto reboot
if %chioce%==s goto shutdown
if %chioce%==q goto end
::这里上面3个判断都没有成立
::如果你不转到别的地方就继续向下执行
::所以加一个:
goto :end
::当然你可以再输入的上面设置一个标签,如果不是那些
::字母的话跳过去重新输入
:reboot
shutdown -r /t 10
goto rechioce
第3楼 luuk 发表于 2010-04-19 14:12
初级用户 发帖 46 积分 69 来自 山东
如果不是设定的字母返回重新输入,怎么写语句啊?
第4楼 luuk 发表于 2010-04-19 14:14
初级用户 发帖 46 积分 69 来自 山东
哦,,明白啦
thank U
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023