我想用批处理创建一个选择程序,用户会被问到这样的事情:
@echo off
:choice
set /P c=What is 2+2
if /I "%c%" EQU "4" goto :yes
if /I "%c%" EQU "WHAT DO I TYPE IN HERE?" goto :no
:yes
msg * well done
pause
exit
:no
exit
因此,当您给出错误答案时,您将被重定向到:no
答案 0 :(得分:0)
@echo off
:choice
set /P c=What is 2+2
if /I "%c%" EQU "4" (goto :yes) else (goto :no)
:yes
msg * well done
pause
exit
:no
exit
答案 1 :(得分:0)
虽然foxidrive的答案对于您给出的示例是最佳的,但如果您要求compare-op
不等于,则为:
if "%c%" NEQ "4" Echo Wrong...
另一个比较操作包括:
where compare-op may be one of:
EQU - equal
NEQ - not equal
LSS - less than
LEQ - less than or equal
GTR - greater than
GEQ - greater than or equal
引自if /?
。
您也可以使用:
if NOT "%c%"=="4" Echo Wrong...
在没有比较操作的情况下执行此操作
答案 2 :(得分:0)
好的,我看到我提出了错误的问题,我真正想做的是创建一个批量激活系统。 因此,当我插入正确的代码时,它应该提取和密码保护.rar或sfx(.exe)文件。 这就是我需要它的原因,这就是我目前所拥有的:
@echo off
:choice
set /P c=Insert Key
if /I "%c%" EQU "123" goto :yes
if /I "%c%" EQU "321" goto :yes
if /I "%c%" EQU "132" goto :yes
:yes
msg * well done
unrar x -p"password" "filename.rar"
pause
exit
:no
exit
但它似乎不起作用......