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

[其他] 批处理变量延迟再扩展除了用for和call还有别的方法吗?

变量延迟再扩展除了用for和call还有别的方法吗?
就是setlocal enabledelayedexpansion后,对!!a!!再扩展。

请给个具体实例,你的问题都很莫名其妙。

TOP

  1. @echo off
  2. set a=b
  3. set b=c
  4. setlocal enabledelayedexpansion
  5. for %%z in (!a!) do echo !%%z!
  6. pause
复制代码
  1. @echo off
  2. set a=b
  3. set b=c
  4. cmd /v /c "echo ^!!a!^!"
  5. pause
复制代码

TOP

回复 3# CrLf


    第一个是for,说了是除了for的。第二个显示错误,是!b!不是c

TOP

没有

TOP

显示C的话 这样
  1. set a=b
  2. set b=c
  3. cmd /v /c echo !%a%!
复制代码

TOP

for 有什么不妥吗?如果追求效率,那是最好的选择了

TOP

返回列表