Board logo

标题: [文本处理] [已解决]bat批处理随机高效生成数字,谢谢 [打印本页]

作者: w1983912    时间: 2014-10-19 15:40     标题: [已解决]bat批处理随机高效生成数字,谢谢

本帖最后由 w1983912 于 2014-10-19 23:37 编辑

N个txt文本 每行都不一样  随机获取 行号  直接生成 txt内

规则是   a.txt有99行      b.txt 有33行       c.txt 有59行     d.txt有87行       e.txt有28行

        随机取a  1-99     b 1-33             c 1-59           d 1-87            e 1-28

得到txt   1000行 可任意修改行数

随机取文件中的任意一行号a##b##c##d##e##

91##24##49##27##3     


要求高效率生成这样范围的数据  生成的txt名可以任意修改  顺序生成   如从2到19999    或者从0003到9999   

有劳大家费心帮帮我 谢谢了
作者: bailong360    时间: 2014-10-19 16:28

根本没听懂问题......
作者: w1983912    时间: 2014-10-19 17:41

91##24##49##27##3       得到这样的数据  数字是范围内随机的  谢谢
作者: terse    时间: 2014-10-19 20:06

  1. @echo off & setlocal enabledelayedexpansion
  2. set /aa=99,b=33,c=59,d=87,e=28,len=1000,_a=10003,_e=19999
  3. for /l %%i in (!_a!,1,!_e!) do (
  4.     set "s=%%i.txt"
  5.     (for /l %%i in (1,1,!len!) do (
  6.         set /a "ar=!random!%%%a%+1,br=!random!%%%b%+1,cr=!random!%%%c%+1,dr=!random!%%%d%+1,er=!random!%%%e%+1"
  7.         echo !ar!##!br!##!cr!##!dr!##!er!
  8.     ))>"!s:~1!"
  9. )
  10. pause
复制代码

作者: w1983912    时间: 2014-10-19 23:36

回复 4# terse


    非常感谢这个兄弟,完美实现,也谢谢大家




欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2