如何使用选择命令?

时间:2017-03-10 14:57:24

标签: batch-file

我需要使用choice命令来执行与此代码块相同的操作:

"Call to undefined method [loginAttribute]"

我已经尝试了很长一段时间而无法理解它提前感谢!

3 个答案:

答案 0 :(得分:6)

最简单的解决方案根本不检查errorlevel的值,而是直接在goto命令中使用它。通过这种方式,您可以避免使用通常的if命令序列,因此代码更简单。

choice /C 1234 /M "Select Mode: "
goto option-%errorlevel%

其余的代码应该是这样的:

:option-1 money
echo Money
goto loop

:option-2 payouts
echo Payouts
goto loop

:option-3 tutorial
echo Tutorial
goto loop

:option-4
exit /B

答案 1 :(得分:2)

使用像这样的命令选择

choice /c 1234 /M "Select Mode: "

退出时,errorlevel将设置为所选选项的索引(以1开头)。为了对错误级别采取行动,记住"如果错误级别n"陷阱不仅是n,而且是所有更高的值,这意味着它们需要反向指定

 if errorlevel 4 goto exit
 if errorlevel 3 goto tutorials
 if errorlevel 2 goto payout
 if errorlevel 1 goto money

答案 2 :(得分:1)

fvu答案的替代方法是使用%ErrorLevel%变量作为Squashman建议:

Choice /C 1234 /M "Select Mode: "
If %ErrorLevel%==1 GoTo money
If %ErrorLevel%==2 GoTo payouts
If %ErrorLevel%==3 GoTo tutorial
Exit/B
[:money | :payouts | :tutorial]