在BAT中的If语句中使用userinput作为变量

问题描述:

@echo off 
set /p a=Enter 1,2,3: 
if %a%==1 
echo you entered 1 
if %a%==2 
echo you entered 2 
if %a%==3 
echo you entered 3 

从作为整数的变量字段到也是整数型用户输入的转换可能需要引号,但这不是阻止我进行的错误在代码中使用此方法。我用了很多次这让我感到尴尬,我忘记了如何去做。感谢帮助。在BAT中的If语句中使用userinput作为变量

+1

你的问题是什么呢? – Gabe

整个IF语句必须驻留在同一行

@echo off 
set /p a=Enter 1,2,3: 
if %a%==1 echo you entered 1 
if %a%==2 echo you entered 2 
if %a%==3 echo you entered 3 

,除非你用括号

@echo off 
set /p a=Enter 1,2,3: 
if %a%==1 (
    echo you entered 1 
) 
if %a%==2 (
    echo you entered 2 
) 
if %a%==3 (
    echo you entered 3 
) 

或续行

@echo off 
set /p a=Enter 1,2,3: 
if %a%==1^
    echo you entered 1 
if %a%==2^
    echo you entered 2 
if %a%==3^
    echo you entered 3