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

[文本处理] 批处理命令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”,想问问题在哪?怎样处理。

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

TOP

返回列表