Board logo

标题: [其他] [已解决]代码中用 defined 判断变量为何出错? [打印本页]

作者: jellyhk    时间: 2011-12-28 10:30     标题: [已解决]代码中用 defined 判断变量为何出错?

  1. @echo off
  2. setlocal EnableDelayedExpansion
  3. set c=0
  4. for /l %%a in (992 1 1010) do (
  5.     set a=%%a
  6.     set b=!a:~3,4!
  7.     if defined b set c=!a:~0,1!
  8. echo http://xia.abada.cn/t3kjuyij/!c!/%%a/%%a.rar
  9. )
  10. pause
复制代码
为什么没变量b的时候c=9
作者: yyykkkyyyy    时间: 2011-12-28 12:12

多加空格使变量有定义了, 以后类似 set b=!a:~3,4!建议写成 set "b=!a:~3,4!"便于检查
作者: awk    时间: 2011-12-28 15:48

第六行结尾多了个空格
作者: cjiabing    时间: 2011-12-29 04:30

变量判断的问题,使用if  not "!var!"=="" echo,ddddd的形式
作者: jellyhk    时间: 2011-12-29 10:23

原来多了空格!晕
作者: Hello123World    时间: 2011-12-30 15:53

一个空格引发的血案,犀利了。




欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2