如果没有,不工作

时间:2013-08-04 18:57:05

标签: if-statement batch-file

所以这是我的代码中的'if not'部分:

:open
set/p g=Choice:
if %g%== 1 goto FNVEnd
if %g%== 2 goto KSPEnd
if %g%== 3 goto SKYPEEnd
if not %g%==1|2|3 goto Correct2

:Correct2
cls
echo Welcome.
timeout 3
goto Open

除了'if not'部分外,一切正常,请帮助!

2 个答案:

答案 0 :(得分:0)

根本不需要那条线。如果用户没有输入1,2或3,则直接进入Correct2。

你确定其他比较中的空间是否正常?

你可能想试试这个:

:open
set/p g=Choice:
if "%g%"=="1" goto FNVEnd
if "%g%"=="2" goto KSPEnd
if "%g%"=="3" goto SKYPEEnd

REM If we get here ...
cls
echo Welcome.
timeout 3
goto Open

答案 1 :(得分:0)

如果你在这里试图检查你是否得到了正确答案,那么你已经做到了,堕落将会完成它。

如果您确实需要这个==那或那= =这个...... 你将不得不使用IF,ELSE。

REM  ::  AND
IF A==A IF B==B GOTO bothtrue

REM  ::  OR
IF A==A (
  GOTO oneorother
) ELSE (
  IF B==B GOTO oneorother
)

:bothtrue
 ECHO Both were true.
GOTO EOF
:oneorother
 ECHO AT least one was true.