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

  2、echo ^%num^% 的时候,先匹配百分号对,被识别为是在做变量引用,引用的变量是 num^ ;但是,这里的 ^ 它本身是转义字符,从而 num^ 将转化为 num ——也就是在说,在做变量引用的时候,变量名先被识别为 num^,进而又被识别为 num。 ...


经测试,两个百分号中间的字符不会再被处理:
  1. @echo off
  2. set num^^=2009
  3. set num=09
  4. echo ^%num^%
  5. pause
复制代码
结果是 2009

[ 本帖最后由 tireless 于 2009-3-24 09:58 编辑 ]

TOP

原帖由 Lumiere 于 2009-3-24 10:17 发表
所以要显示变量num^^的值,必须在%%之间写成num^。...

不是,就要写 num^^。要设置 num^^ 的变量要这样:set num^^^^=2009

TOP

可是你这句话不对啊:
所以要显示变量num^^的值,必须在%%之间写成num^。

是否是笔误?我觉得你想表达的是:
所以要显示变量num^的值,必须在%%之间写成num^,而不要写成 num^^ 来指望它变成 num^。

[ 本帖最后由 tireless 于 2009-3-24 10:58 编辑 ]

TOP

原帖由 Batcher 于 2009-3-23 20:02 发表
^是转义字符,而不是逃逸字符吧?逃逸字符是%啊。楼上笔误?
 


Google 的翻译结果:

escape 逃逸
escape character 转义字符

逃逸=转义?

TOP

返回列表