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

批处理产生001到999之间的数字

[复制链接]
发表于 2009-8-26 10:57:59 | 显示全部楼层
set str=%!str!:~-3% 换成
set str=!str:~-3! 看看
发表于 2009-10-27 14:04:52 | 显示全部楼层

大家帮我看看这个是什么意思

@echo off
for /l %%i in (1 1 12) do (
   for /l %%j in (1 1 10) do (
      
  ping /n 1 192.168.%%i.%%j
    )
  )

pause>nul

评分

参与人数 1PB -1 收起 理由
Seter -1 请新开贴

查看全部评分

发表于 2009-11-10 19:37:06 | 显示全部楼层

回复 1楼 的帖子

  1. @echo off&cls
  2. for /l %%i in (0,1,9) do (
  3.     for /l %%j in (0,1,9) do (
  4.         for /l %%k in (0,1,9) do (
  5.             if %%i%%j%%k neq 000  echo.%%i%%j%%k
  6.             ping -n 2 127.1>nul
  7.             cls
  8.         )
  9.     )
  10. )
  11. pause>nul
复制代码
发表于 2009-11-11 00:51:13 | 显示全部楼层
  1. @echo off
  2. for /l %%i in (1,1,999) do (
  3. if %%i leq 9 (echo 00%%i>>a.txt) else (if %%i leq 99 (echo 0%%i>>a.txt) else (echo %%i>>a.txt)))
  4. pause
复制代码
发表于 2009-11-11 21:56:04 | 显示全部楼层

回复 28楼 的帖子

大概是屏幕窗口限制!因为从1到100就是完整的
发表于 2009-11-12 09:12:50 | 显示全部楼层
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. for  %%a in (0,1,2,3,4,5,6,7,8,9) do (
  4.    
  5.     for  %%b in (0,1,2,3,4,5,6,7,8,9) do (
  6.       
  7.          for  %%c in (0,1,2,3,4,5,6,7,8,9) do (
  8.            echo %%a%%b%%c
  9.            )
  10.            )
  11.     )
  12. pause
复制代码
发表于 2009-12-3 16:17:47 | 显示全部楼层
新手 来学习下
刚试了试 还是不行.努力中
发表于 2009-12-6 19:58:45 | 显示全部楼层
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. for /l %%i in (1001 1 1999) do (
  4. set a=%%i
  5. echo !a:~1,3!
  6. )
  7. pause>nul
复制代码

[ 本帖最后由 x576380361 于 2009-12-8 22:38 编辑 ]
发表于 2009-12-9 00:33:44 | 显示全部楼层
最短的:  (如果没有 edit.exe, 就改 write, 再不然就改 notepad)
  1. cmd /v:on /q /c "del ~&(for /l %%a in (9001,1,9999) do set n=%%a&echo !n:*9=!>>~)&edit ~"
复制代码
长一点的:
  1. cmd /v:on /q /k "mode con lines=1001&(for /l %%a in (9001,1,9999) do set n=%%a&echo !n:*9=!)"
复制代码
再长点的:
  1. echo off&mode con lines=1000&setlocal enabledelayedexpansion&(for /l %%a in (1001,1,1999) do set n=%%a&&echo !n:*1=!)&pause
复制代码

[ 本帖最后由 neorobin 于 2009-12-9 02:16 编辑 ]
发表于 2009-12-9 11:25:54 | 显示全部楼层
我就是不知道怎样才能看到那些代码?
发表于 2009-12-12 18:41:35 | 显示全部楼层

太帅了

原帖由 novaa 于 2008-1-7 19:23 发表

@echo off&setlocal enabledelayedexpansion
for /l %%i in (1001 1 1999) do (
set var=%%i
echo !var:~1!>>aaa.txt
)
pause


  


楼主你的方法太帅了,又学到一招,呵呵
发表于 2009-12-13 21:24:31 | 显示全部楼层
  1. @echo off
  2. for /l %%i in (0,1,9) do (
  3. for /l %%j in (0,1,9) do (
  4. for /l %%k in (1,1,9) do echo %%i%%j%%k
  5. )
  6. )
  7. pause
复制代码
发表于 2010-7-19 21:29:13 | 显示全部楼层
答:
  1. @echo off
  2. :1
  3. set /a js+=1
  4. set mun=%js%
  5. if %js% lss 100 set mun=0%js%
  6. if %js% lss 10 set mun=00%js%
  7. echo %mun%
  8. if "%js%"=="999" goto 2
  9. goto 1
  10. :2
  11. pause
复制代码


===========
end;
发表于 2010-7-28 15:13:56 | 显示全部楼层
  1. @echo off
  2. for /l %%i in (1,1,999) do (
  3. set var=00%%i
  4. call echo %%var:~1,-3%%>>1.txt
  5. )
  6. 1.txt
复制代码
这个最经典,最简洁

虽然还有一个代码:也蛮简洁的:但是扩展性不好。

  1. for /l %%i in(1,1,9) do echo 00%%i
  2. for /l %%i in(10,1,99) do echo 0%%i
  3. for /l %%i in(100,1,999) do echo %%i
复制代码
发表于 2010-8-5 09:51:19 | 显示全部楼层
  1. @Echo off
  2. setlocal enabledelayedexpansion
  3. for /l %%a in (1 1 999) do (
  4. set a=00%%a
  5. set/p =!a:~-3! <nul
  6. )
  7. pause>nul
复制代码
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-16 22:41 , Processed in 0.023875 second(s), 8 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表