批处理bat命令,这句哪里错了,为什么不能跳转呢?

@set/pchoise=请输入MOD序号:@if%choise%=="a"gotoA@if%choise%=="b"gotoB:A@echoA@pause:B@echo... @set /p choise=请输入MOD序号:
@if %choise%=="a" goto A
@if %choise%=="b" goto B

:A
@echo A
@pause

:B
@echo B
@pause
展开
 我来答
LJ_SunTB
2011-07-18 · TA获得超过1404个赞
知道小有建树答主
回答量:766
采纳率:0%
帮助的人:816万
展开全部
if %choise%=="a"
if %choise%=="b"
上面这两句中对比时,choise变量值没有加上一对引号,造成等式不成立,自然就不跳转,直接执行下面的代码

正确代码如下:
@echo off
set /p choise=请输入MOD序号:
if /i "%choise%"=="a" goto A
if /i "%choise%"=="b" goto B

:A
echo A
goto :end

:B
echo B
goto :end

:end
pause
追问
谢谢,问题已经解决了,顺便问一句
if 后面的 /i 这个参数是干嘛的啊?
追答
/i
是不区分大小写
如果没有这个,按你代码所写的,只有输入小写的字母才有效
yyykkkyyyy
2011-07-19 · TA获得超过3136个赞
知道大有可为答主
回答量:2691
采纳率:40%
帮助的人:3263万
展开全部
呵呵,问题解决了我也挑点毛病,不过最佳答案请选楼上网友
这个写法如省去一句if /i "%choise%"=="a" goto A效果一样,原因是批处理是顺序执行的最好在原基础上set/p 之前加个标签,两if语句下加一句goto此标签,这样输入错可重输入
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式