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

[其他] 批处理变量嵌套的疑问

本人批处理半桶水,请教各位大神
@echo off
set a=1
set b=a
call echo %%%b%%%         这句的运行结果是1
if call echo %%%b%%%==1 echo yes     这句会出错


请问怎么写才正确呢?

回复 2# newswan
call可以用在其它语句中,只是楼主的用法有问题:
  1. @echo off
  2. set a=1
  3. set b=a
  4. call set c=%%%b%%%
  5. if %c%==1 call echo %%%b%%%
  6. pause
复制代码

TOP

  1. set a=1
  2. set b=a
  3. call set c=%%%b%%%
  4. if %c%==1 echo yes
复制代码
回复 1# li495388759
1

评分人数

    • li495388759: 可行,但要多一个变量,不过还是学习了技术 + 1

TOP

call 不能用在其他语句中
  1. setlocal ENABLEDELAYEDEXPANSION
  2. if !%b%!==1
复制代码
1

评分人数

    • li495388759: 感谢给帖子标题标注[已解决]字样技术 + 1

TOP

返回列表