无忧启动论坛

标题: 请问FOR语句与SET语句的使用 [打印本页]

作者: chiannet    时间: 2014-10-17 07:26
标题: 请问FOR语句与SET语句的使用
  1. @ECHO OFF
  2. FOR %%I IN (A B) DO (FOR %%J IN (1 2) DO (IF %%J==2 (SET K=X) ELSE (SET K=Y)
  3.                 IF %%I==A (SET KK=%%J%%I) ELSE (SET KK=%K%ES)
  4.                 ECHO %KK%))

  5. PAUSE
复制代码





期待返回的屏显:
1A
2A
YES
XES

实际返回的屏显:



请问set语句为什么无效?
作者: chenall    时间: 2014-10-17 09:55
本帖最后由 chenall 于 2014-10-17 10:03 编辑

call ECHO %%KK%%

或在for之前
SETLOCAL ENABLEDELAYEDEXPANSION
然后里面需要调用变量的地方使用!!
比如
ECHO !KK!


作者: chiannet    时间: 2014-10-17 10:25
chenall 发表于 2014-10-17 09:55
call ECHO %%KK%%

或在for之前

  1. @ECHO OFF

  2. SETLOCAL ENABLEDELAYEDEXPANSION
  3. FOR %%I IN (A B) DO (FOR %%J IN (1 2) DO (IF %%J==2 (SET K=X) ELSE (SET K=Y)

  4.                 IF %%I==A (SET KK=%%J%%I) ELSE (SET KK=!K!ES)
  5. ECHO !KK!))


  6. PAUSE
复制代码




谢谢






欢迎光临 无忧启动论坛 (http://bbs.c3.wuyou.net/) Powered by Discuz! X3.3