Batch file 如何批量验证输入

Batch file 如何批量验证输入,batch-file,Batch File,所以我批量制作了一个菜单,你可以选择你想做的事情,但是如果你输入一个菜单上没有的选项,它会选择第一个选项。如何使其回显无效输入,请重试。 菜单: 使用选择。简单得多。这里有一个例子 @echo off Choice /c 123456 /m "select choice" If not %errorlevel% equ 0 Echo you chose %errorlevel% 然后,通过创建易于管理的标签,您可以使用它来goto @echo off Choice /c 123 /m "sel

所以我批量制作了一个菜单,你可以选择你想做的事情,但是如果你输入一个菜单上没有的选项,它会选择第一个选项。如何使其回显无效输入,请重试。
菜单:


使用选择。简单得多。这里有一个例子

@echo off
Choice /c 123456 /m "select choice"
If not %errorlevel% equ 0 Echo you chose %errorlevel%
然后,通过创建易于管理的标签,您可以使用它来
goto

@echo off
Choice /c 123 /m "select choice"
Goto opt%errorlevel%
:opt3
Echo do something here for option 3
Goto :eof
:opt2
Echo do something here for option 2
Goto :eof
:opt1
Echo do something for oprion 1
:opt0
Exho You pressed ctrl+c and selected N
....

You get the idea..

@Dillon在您的情况下,只需使用
choice
回答您的问题,并演示使用命令
choice
编写选项菜单的更好方法,正如Gerhard Barnard在下面的回答中所建议的那样。gud但不会避免
Ctrl+C
,在这种情况下,
ERRORLEVEL
设置为0@HackingAddict0302.. 这无关紧要。在
ctrl+c
之后,脚本将不再执行,因此
errorlevel
对脚本没有任何意义。
@echo off
Choice /c 123 /m "select choice"
Goto opt%errorlevel%
:opt3
Echo do something here for option 3
Goto :eof
:opt2
Echo do something here for option 2
Goto :eof
:opt1
Echo do something for oprion 1
:opt0
Exho You pressed ctrl+c and selected N
....

You get the idea..