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

[其他] for循环判断问题

  1. echo off
  2. setlocal enabledelayedexpansion
  3. set var=haha,haha1,haha2
  4. for %%i in (%var%) do (
  5. echo %%i
  6. )
  7. pause
复制代码
执行此代码输出结果为
   这个没什么问题,然后稍加改动变成如下
  1. echo off
  2. setlocal enabledelayedexpansion
  3. set var=haha,haha1,haha2
  4. if %var% = haha (
  5. echo haha
  6. goto :eof
  7. )
  8. for %%i in (%var%) do (
  9. echo %%i
  10. )
  11. pause
复制代码
就无法正确执行了,输出结果为

请教各位大神,这是什么原因,怎么解决?

回复 2# pcl_test


    写的有问题吗?你是指那个判断进不去?

TOP

回复 4# CommandBatCmd


    那个确实笔误少些了个=号    不过没影响      那个判断肯定不会进        主要是感觉有了那个     for的()对应出了问题     不知道什么原因    也不知道怎么解决

TOP

回复 7# CommandBatCmd


    不行的,我那个少个等号确实是笔误,真实代码里是没少的,而且我的逗号就是要作为分隔符来使用的,所以不能有引号。

实际上我是想遍历那个var,如图1是可以正常遍历的,但是在之前加了个if判断后,如图2就不能遍历了。

TOP

返回列表