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

[文本处理] 如何用批处理使文本内容乱序?

比如有一个txt文本ff.txt
每行一个名字,有英文有中文
sdgsdgsdg
sgvvxbg
eytrurt
哈罗哈
asf1354
bvmnmnm
sgshdfhdf
如果想将这个文本中所有内容的行与行的顺序随机打乱,最后把结果保存到dd.txt中
该如何写啊?例如,运行写好的批处理后,被随机打乱顺序的文本可能为以下内容(以下内容保存在dd.txt中):
sgvvxbg
sdgsdgsdg
eytrurt
sgshdfhdf
asf1354
哈罗哈
bvmnmnm
============================================
以上是仅对一个文本操作,如果有1000个这样的文本也要进行这样的操作,批处理应该怎样写?希望有高人指导,谢谢

  1. @echo off
  2. for /f "delims=" %%a in ('dir /b /s *.txt') do (
  3.      setlocal enabledelayedexpansion
  4.      for /f "tokens=1* delims=:" %%b in ('findstr /n .* "%%a"') do set "_!random!_%%b=%%c"
  5.      for /f "tokens=2 delims==" %%d in ('set _') do echo %%d
  6.      endlocal
  7. )
  8. pause>nul         
复制代码
***共同提高***

TOP

  1. @echo off
  2. if defined 源目录 goto :tow
  3. setlocal enabledelayedexpansion
  4. pushd %~dp0
  5. set 源目录=sour
  6. set 结果=dest
  7. for %%a in (%源目录%\*.txt) do (
  8.    for /f "tokens=1*" %%b in ('%0 "%%a"^|sort') do (
  9.        echo;%%c>>%结果%\%%~nxa
  10.     )
  11. )
  12. pause
  13. goto :eof
  14. :tow
  15. for /f "tokens=*" %%a in (%~1) do (
  16.     echo !random! %%a
  17. )
  18. cd.>%结果%\%~nx1
  19. goto :eof
复制代码

TOP

投机取巧^_^
  1. @sort /+3 a.txt
复制代码
技术问题请到论坛发帖求助!

TOP

4L。。很强大。。x

TOP

返回列表