[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖
本帖最后由 1055367558 于 2017-9-21 17:53 编辑

顺便给你讲一下if。。else的应用。。大概就是:if命令格式可写为if 判断条件 (成立时命令系列) else (不成立时命令系列)
详细的可以自行百度一下
if not defined是检测是否存在变量。可以解决输入为空的情况
而那条长的固定代码Setlocal enabledelayedexpansion。。是变量延迟,可以解决输入为“的情况
  1. @echo off
  2. Setlocal enabledelayedexpansion
  3. :menu
  4. cls
  5. set aa=
  6. set /p aa=请输入数字:
  7. if not defined aa echo 输入错误&pause&goto menu
  8. if !aa! equ 1 goto 1
  9. if !aa! equ 2 goto 2
  10. if !aa! equ 3 goto 3
  11. if !aa! equ 4 (goto 4) else (echo 输入错误&pause&goto menu)
  12. echo.
  13. :1
  14. echo 输入为1
  15. pause
  16. goto menu
  17. :2
  18. echo 输入为2
  19. pause
  20. goto menu
  21. :3
  22. echo 输入为3
  23. pause
  24. goto menu
  25. :4
  26. echo 输入为4
  27. pause
  28. goto menu
复制代码
帮你简写一下,仅做参考。。效果是一样的
  1. @echo off
  2. :menu
  3. Setlocal enabledelayedexpansion
  4. cls&set aa=&set s=0&set /p aa=请输入数字:
  5. if not defined aa echo 输入错误&pause&goto menu
  6. for /l %%i in (1,1,4) do (if !aa! equ %%i (echo 输入为%%i&pause&goto menu) )
  7. if !s! equ 0 echo 输入错误&pause&goto menu
复制代码
觉得好的话下面评个技术分+1。。
1

评分人数

TOP

回复 7# 不知道是谁

抱歉什么叫"“每个标签输出的是不同的命令你这代码就没用了”,,我试过了都好的呀

TOP

返回列表