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

[文本处理] 批处理如何把文本打乱排序?

文本里的词语随机打乱排序
XXX1
XXX2
XXX3
XXX4

随机处理后格式

XXX2_XXX1_XXX3
XXX1_XXX4_XXX2
XXX3_XXX2_XXX3
XXX1_XXX3_XXX2


原来文本有几行处理就几行

  1. @echo off
  2. setlocal enabledelayedexpansion
  3. for /f "delims=" %%a in (a.txt) do set /a l=n,n+=1&set ".!n!=%%a"
  4. (for /l %%a in (1,1,%n%) do (
  5.   set str=
  6.   for /l %%b in (1,1,%l%) do (
  7.     set /a r=!random!%%n+1
  8.     for %%c in (!r!) do set "str=!str!!.%%c!_"
  9.   )
  10.   echo !str:~,-1!
  11. ))>b.txt
  12. start b.txt
复制代码
初学BAT,非专业。代码不适当之处还望前辈们多多指点。在此表示感谢!

TOP

回复 2# xxpinqz


    不好用连换行都没有。都堆在一起。
继续求好代码

TOP

回复 3# tan1967


    “不好用”的代码测试无误

TOP

回复 3# tan1967
这个,单独处理你举的例子,除了效率,应该没什么大问题的.
不行的话你最好清晰点描述下你的源文档内容,别人也知道哪里出错。
初学BAT,非专业。代码不适当之处还望前辈们多多指点。在此表示感谢!

TOP

返回列表