Board logo

标题: [其他] [已解决]批处理命令set/a在启动变量延迟以后!符号问题 [打印本页]

作者: 回家路上    时间: 2015-8-29 12:13     标题: [已解决]批处理命令set/a在启动变量延迟以后!符号问题

没开启变量延迟时,
        a为正,则pos=1,neg=0
        否则,pos=0,neg=1
  1. @echo off
  2. set a=-11
  3. set /a neg=%a:~1%+%a%,neg=!neg,pos=!neg
  4. echo;%pos%----%neg%
  5. pause & exit /b
复制代码
开启了变量延迟以后,!就解析不正确了,求教怎么办?
  1. @echo off & setlocal enabledelayedexpansion
  2. if 1==1 (
  3. set a=-11
  4. set /a neg=!a:~1!+!a!,neg=!neg,pos=!neg
  5. echo;!pos!----!neg!
  6. )
  7. pause & exit /b
复制代码

作者: aa77dd@163.com    时间: 2015-8-29 12:26

  1. set /a "a=^!b"
  2. set /a a=^^!b
复制代码

作者: 回家路上    时间: 2015-8-29 12:32

回复 2# aa77dd@163.com


谢啦O(∩_∩)O!




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