标题: [其他] 【已解决】批处理下if else [打印本页]
作者: cyb233 时间: 2019-2-7 00:28 标题: 【已解决】批处理下if else
本帖最后由 cyb233 于 2019-2-11 18:44 编辑
作为一个萌新小白,我最初写了:- if "%a%"=="0" goto :0
- if "%a%"=="1" goto :1
- if "%a%"=="2" goto :2
- if "%a%"=="3" goto :3
- if "%a%"=="4" goto :4
- if "%a%"=="5" goto :5
- if "%a%"=="r" goto :r
- if "%a%"=="s" goto :s
- if /i "%a%"=="q" goto :end
复制代码
但由于按其他无关按键会导致命令顺序执行,所以我根据网上修改成了如下命令:- if "%a%"=="1" (
- goto :1
- )else (
- if "%a%"=="2" (
- goto :2
- )else (
- if "%a%"=="3" (
- goto :3
- )else (
- if "%a%"=="4" (
- goto :4
- )else (
- if "%a%"=="5" (
- goto :5
- )else (
- if "%a%"=="6" (
- goto :6
- )else (
- if "%a%"=="r"(
- goto :r
- )else (
- if "%a%"=="s"
- goto :s
- )
- )
- )
- )
- )
- )
- exit
- )
复制代码
但此时出现了一个问题,无论我按任何按键,命令都会退出,该如何修改?
ps:需要执行的命令仍有选择
作者: 380333722 时间: 2019-2-11 14:13
使用choice命令不是更好吗?
choice /c 012345rsq
if %errorlevel%==9 (goto :end)
if %errorlevel%==8 (goto :s)
if %errorlevel%==7 (goto :r)
if %errorlevel%==6 (goto :5)
if %errorlevel%==5 (goto :4)
if %errorlevel%==4 (goto :3)
if %errorlevel%==3 (goto :2)
if %errorlevel%==2 (goto :1)
if %errorlevel%==1 (goto :0)
作者: cyb233 时间: 2019-2-11 18:43
回复 2# 380333722
感谢,已解决
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |