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

[文本处理] 批处理如何生成固定字符串+随机数?

在论坛上查了很多教程,有现成bat。就是没有固定字符串+随机数。
固定=https://www.2345.com/
随机16位大写字母数字=2ICJ1S06DANS4W57
组合=https://www.2345.com/2ICJ1S06DANS4W57
经常先在网上免费生成随机网站上生成一定数量的随机,再手动复制到固定字串后面。
求个bat最好能检查去重复,生成的字符串能有换行(两组字符串中间有一空行),能一次生成60组以上,

----------------------------------------------------------------------------------------------------------------------
https://www.2345.com/FECJ1S06DANHGW51

https://www.2345.com/KRCJ1S06DANDFW52

https://www.2345.com/HTYJ1S06DANGFW53

https://www.2345.com/MCCJ1S06DANSCW54

类似这样的效果

批处理生成这种随机大写:先设定一串26个大写字母,再通过随机一串数字与某某的余数之类来截取位置的字母,再拼起来。很累的。大致过程就是介样子。
QQ: 己阵亡
脚本优先 [PowerShell win10]

TOP

批处理生成这种随机大写:先设定一串26个大写字母,再通过随机一串数字与某某的余数之类来截取位置的字母, ...
xczxczxcz 发表于 2019-10-24 15:24


如果是单纯数字不要字母呢???

TOP

回复 3# bh62549


    你在论坛找到的哪个代码能生成符合要求的随机数,发出来,我告诉你怎么添加固定字符串。
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

  1. @echo off & setlocal enabledelayedexpansion
  2. ::固定字符串
  3. set "s1=https://www.2345.com/"
  4. ::随机位数
  5. set /a ws=16
  6. ::一次生成组数
  7. set /a zs=120
  8. set /a a=0
  9. set /a b=0
  10. set "s2="
  11. set "str=ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890"
  12. del str.txt 1>nul 2>nul
  13. :mm
  14. set /a r=!random!%%36
  15. set s2=%s2%!str:~%r%,1!
  16. set /a a+=1
  17. if %a% lss %ws% goto mm
  18. (echo %s1%%s2%&echo.)>>str.txt
  19. set "s2="
  20. set /a a=0
  21. set /a b+=1
  22. if %b% lss %zs% goto mm
复制代码

TOP

本帖最后由 codegay 于 2019-10-25 13:14 编辑

nim语言版,之前写过的.稍稍改下了
  1. import os, random, times
  2. var t =  epochTime()
  3. randomize()
  4. let chars = ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A',
  5. 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O',
  6. 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z']
  7. # 随机字符的长度
  8. let strcounter = 16
  9. let linecounter = 1000000
  10. #输出文件
  11. var f = open(getAppDir() / "result.txt", fmAppend)
  12. for i in 1 .. linecounter:
  13.     var str = "bathome.com我带你们打"
  14.     for n in 1 .. strcounter:
  15.       str.add(sample(chars))
  16.     str.add("\r\n")
  17.     str.add("\r\n")
  18.     f.write(str)
  19. f.close()
  20. echo epochTime() - t
复制代码
我编译好的可执行文件72小时内可下载:
编译参数 nim c -d:danger snake.nim
https://c-t.work/s/65a89db4b96c44
去学去写去用才有进步。安装python3代码存为xx.py 双击运行或右键用IDLE打开按F5运行

TOP

来个优雅点的?
  1. $int=(65..90)+(48..57);
  2. for($i=1;$i -le 60;$i++){'https://www.2345.com/'+(-join (1..16|%{[char][int](Get-Random $int)}))}
复制代码
QQ: 己阵亡
脚本优先 [PowerShell win10]

TOP

  1. $int=(65..90)+(48..57);1..60|%{'https://www.2345.com/'+(-join (1..16|%{[char][int](Get-Random $int)}))}
复制代码
QQ: 己阵亡
脚本优先 [PowerShell win10]

TOP

say join "", map { ('0'..'9','A'..'Z')[rand(36)] } (1..16) for (1..60);
骆驼

TOP

本帖最后由 terse 于 2019-10-27 23:16 编辑

上面加个参数
  1. 1..60|%{'https://www.2345.com/'+-join($(Get-Random (48..57 + 65..90) -count 16)|%{[char]$_})}
复制代码
让它短一点
  1. 1..60|%{'https://www.2345.com/'+-join([char[]](48..57 + 65..90)|Get-Random -Count 16)}
复制代码

TOP

返回列表