Board logo

标题: [文本处理] 批处理命令if判断为何失败? [打印本页]

作者: 无名一世    时间: 2013-9-11 22:06     标题: 批处理命令if判断为何失败?

  1. @echo off
  2. :S
  3. set danwei= & set zhi=
  4. echo 请输入“值.单位”(单位:ft m km nm,速度直接套用距离单位)
  5. set num=10.ft
  6. for /f "delims=. tokens=1,2" %%i in ("%num%") do (
  7. set zhi=%%i & set danwei=%%j
  8. )
  9. If "%danwei%"=="ft" goto A
  10. If "%danwei%"=="m" goto B
  11. If "%danwei%"=="km" goto C
  12. If "%danwei%"=="nm" (goto D) else (
  13. goto W
复制代码
想问为什么总判断"%danwei%"不等于 “ft”,想问问题在哪?怎样处理。
作者: weichenxiehou    时间: 2013-9-11 22:22

回复 1# 无名一世
07行最后多了一个空格,实际"%danwei%"=="ft ",要么删掉最后的空格,要么写成set "danwei=%%j",后者为成熟的写法。




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