Board logo

标题: [求助]FOR命令001-100的问题 [打印本页]

作者: yatv2000     时间: 2010-5-27 12:34    标题: [求助]FOR命令001-100的问题

@echo off
for /l %%i in (1,1,100) do @echo %%i
pause
保存执行看效果,他会显示从1 2 3 4 5 。。。。直到100这100个数字
(1,1,100)这个参数也就是表示从1开始每次加1直到100终止!
但是我想从001 002 003 这样一直每次加1直到100终止。也就是001-100。这样应该怎么写。麻烦大哥帮我写个,谢谢。
作者: ficn     时间: 2010-5-27 14:10
@echo off&setlocal ENABLEDELAYEDEXPANSION
for /l %%i in (1001,1,1100) do (set q=%%i
echo !q:~-3!)
pause
作者: Hanyeguxing     时间: 2010-5-27 18:37

@echo off&setlocal ENABLEDELAYEDEXPANSION
for /l %%i in (1,1,100) do set i=00%%i&echo.!i:~-3!
pause

作者: qinchun36     时间: 2010-5-27 22:08
很典型的批处理思维啊!
作者: yatv2000     时间: 2010-5-28 03:00


  Quote:
Originally posted by Hanyeguxing at 2010-5-27 06:37 PM:
@echo off&setlocal ENABLEDELAYEDEXPANSION
for /l %%i in (1,1,100) do set i=00%%i&echo.!i:~-3!
pause

2位都是批高手.我在这里受教了.谢谢2位的解答.
作者: a85103531     时间: 2010-6-1 13:34
学习了。不过看你们都在用ENABLEDELAYEDEXPANSION  实在不明白,不用后果是什么?
作者: echoair     时间: 2010-6-2 11:17
你可以搜索一下关于批处理命令的预处理机制和变量延迟的帖子,相信会有收获的…
作者: echoair     时间: 2010-6-2 11:19
呵呵,还有变量截取的帖子…