cmd/bat if else嵌套方法

if else嵌套方法

if 语句与左括号 ( 同行
右括号 ) 不与 else if 同行
右括号 ) 后面加上续行操作符 ^
例:

@echo off
title 算命大师
color e2
echo.
echo -----------只能计算生肖和星座:p(q键退出)----------
:begin
set /p yearmonthday=请输入 出生年月日 (例如 19990411):
if %yearmonthday% == q goto end

set year=%yearmonthday:~0,4%
set monthday=%yearmonthday:~4,4%
set month=%yearmonthday:~4,2%
set day=%yearmonthday:~6,2%
set /a mod=%year%%%12

echo 您输入了:%year%%month%%day%if "%month%" LSS "01" goto error1
if "%month%" GTR "12" goto error1
if "%day%" LSS "01" goto error2
if "%day%" GTR "31" goto error2

if %mod%==0 (Echo 你属猴)^
else if %mod%==1 (Echo 你属鸡)^
else if %mod%==2 (Echo 你属狗)^
else if %mod%==3 (Echo 你属猪)^
else if %mod%==4 (Echo 你属鼠)^
else if %mod%==5 (Echo 你属牛)^
else if %mod%==6 (Echo 你属虎)^
else if %mod%==7 (Echo 你属兔)^
else if %mod%==8 (Echo 你属龙)^
else if %mod%==9 (Echo 你属蛇)^
else if %mod%==10 (Echo 你属马)^
else if %mod%==11 (Echo 你属羊)
if "%monthday%" LEQ "0119" echo 魔蝎座
if "%monthday%" GEQ "0120" if "%monthday%" LEQ "0218" echo 水瓶座
if "%monthday%" GEQ "0219" if "%monthday%" LEQ "0320" echo 双鱼座
if "%monthday%" GEQ "0321" if "%monthday%" LEQ "0419" echo 白羊座 
if "%monthday%" GEQ "0420" if "%monthday%" LEQ "0520" echo 金牛座
if "%monthday%" GEQ "0521" if "%monthday%" LEQ "0621" echo 双子座
if "%monthday%" GEQ "0622" if "%monthday%" LEQ "0722" echo 巨蟹座
if "%monthday%" GEQ "0723" if "%monthday%" LEQ "0822" echo 狮子座
if "%monthday%" GEQ "0823" if "%monthday%" LEQ "0922" echo 处女座
if "%monthday%" GEQ "0923" if "%monthday%" LEQ "1023" echo 天秤座
if "%monthday%" GEQ "1024" if "%monthday%" LEQ "1122" echo 天蝎座
if "%monthday%" GEQ "0321" if "%monthday%" LEQ "0419" echo 白羊座
if "%monthday%" GEQ "1222" echo 魔蝎座 
goto begin

:error1
echo month ERROR
goto begin
:error2
echo day ERROR
goto begin

:end
echo -----------已退出----------
pause

批处理:将一系列命令按一定的顺序集合为一个可执行的文本文件,其扩展名为BAT或者CMD。
键盘上按下Ctrl+C组合键来强行终止一个批处理的执行过程。

set /a
/a 指定一个变量
/a = (等号右边的字符串为被评估的数字表达式)

/p 指定用户输入

if判断:
EQU - 等于
NEQ - 不等于
LSS - 小于
LEQ - 小于或等于
GTR - 大于
GEQ - 大于或等于

你可能感兴趣的:(cmd)