[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖
批处理产生001到999之间的数字
  1. @echo off
  2. for /l %%i in (1,1,999) do (
  3. echo %%i>>1.txt
  4. )
  5. pause
复制代码

TOP

还有一个问题,这代码如何依次填充显示,如何显示下一个就把前面一个覆盖掉?
就是从0001到999,一个一个的显示在屏幕中?

TOP

请问下这个代码错在哪?
@echo off
setlocal enabledelayedexpansion
for /l %%i in (1001,1,1999) do (
set var=%%i
echo !var:~1,3!
)
pause

TOP

  1. @echo off & setlocal enabledelayedexpansion
  2. for /L %%i in (1000,1,1999) do (
  3.     set var=%%i
  4.     echo !var:~-3!   
  5. )
  6. pause
复制代码

TOP

  1. @echo off
  2. set num=000
  3. :c
  4. set /a num+=1
  5. if %num% leq 999 echo %num%&goto c
  6. pause
复制代码

TOP

  1. @echo off
  2. SET NUM=001
  3. :MAIN
  4. SET /A NUM+=1
  5. PING 127.1 -N 2 > NUL
  6. call echo %%NUM:~-3%%
  7. IF %NUM%==999 GOTO END
  8. GOTO MAIN
  9. :END
  10. pause & EXIT
复制代码
无所谓而无所为 无所谓而无所不为

TOP

回复 94# 悬崖之树


    不存在这种情况,请重试!~
寂寞是黑白的,但黑白不是寂寞,是永恒。BAT 需要的不是可能,而是智慧。

TOP

大家注意到没有,如果没有设置cmd窗口的行数的话,是不能显示001~999的,而是从701~999
所以要在前面加一句: mode con lines=1000 才行,如
  1. @echo off & setlocal ENABLEDELAYEDEXPANSION
  2. mode con lines=1000
  3. for /l %%i in (1 1 999) do (
  4. set str=00%%i
  5. echo !str:~-3!
  6. )
  7. pause
复制代码

TOP

回复 17# firewolf85


        取后三个字符

TOP

回复 90# tmxue


    已经有这么多代码了,随便抄一个,不难。

TOP

回复 76# zsllq


    你抄的哪段代码?

TOP

从零开始难啊

TOP

回复 88# cb02356828


    人家的目的不是为了隐藏

TOP

  1. 我是新手,来这里学习的。
  2. 这个代码隐藏方法,一个Ctrl+A就全漏了……
复制代码

TOP

本帖最后由 QIAOXINGXING 于 2012-2-24 20:04 编辑

回复 86# wangxiaodong


   


/a 是指进行数学运算。
%RANDOM% 是系统返回的0 到 32767 之间的任意十进制数字。由 Cmd.exe 生成。
%% 是 取余 。
所以,num 的值是 1 到 999 的随机数。

TOP

返回列表