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

[文本处理] 批处理for循环中变量的值为何不改变?

  1. @echo off
  2. set key=%1
  3. set num=%2
  4. set len=%3
  5. set abb=0
  6. for /l %%i in (1,%num%,%len%) do (
  7. set /a abb+=1
  8. echo index=%abb%
  9. if "%abb%" LSS "10" (
  10. set /p=%key%%%i<nul>>1.txt
  11. )
  12. )
复制代码
为什么abb的值不变,一直是0??

变量延迟和命令行参数的问题
  1. if "%1"=="" (
  2.   cmd /s /k "%~s0 asdfg 1 5&exit"
  3.   exit
  4. )
  5. @echo off & setlocal enableDelayedExpansion
  6. set key=%1
  7. set num=%2
  8. set len=%3
  9. set abb=0
  10. for /l %%i in (1,%num%,%len%) do (
  11.   set /a abb+=1
  12.   echo index=!abb!
  13.   if !abb! LSS 10 (
  14.     set /p=%key%%%i<nul>>1.txt
  15.   )
  16. )
  17. pause
复制代码

[ 本帖最后由 neorobin 于 2010-6-30 16:27 编辑 ]

TOP

受教了,谢谢!!!!!!!!!!!!!!!1

TOP

看不什么懂。。

想知道这p处理是实现什么个效果????菜鸟请教。

TOP

回4楼

代码只是其中的一部分,你无法知道是什么效果的
努力学习,努力挣分

TOP

返回列表