Board logo

标题: [文本处理] [已解决]批处理怎样随机抽取不同文件中的一段组成新文章? [打印本页]

作者: clcavril    时间: 2011-6-29 17:42     标题: [已解决]批处理怎样随机抽取不同文件中的一段组成新文章?

文件夹下有数篇不同的文章,数量不定, 都是形如xx.txt的,文件名长度不定

现在想随机从一个txt中抽取出1段  (以换行作为段落标志)可参考此帖; http://www.bathome.net/viewthrea ... ghlight=%2Bfanfande

随机抽取8个txt文件,得到8个段落,然后把这8个段落合并为一个新的txt,保存到articles文件夹下

下面是txt样本,有40个txt文件


http://u.115.com/file/aq36fy8h

先谢谢大家了
作者: batman    时间: 2011-6-29 20:58

本帖最后由 batman 于 2011-6-29 21:00 编辑
  1. @echo off&setlocal enabledelayedexpansion
  2. if not exist articles md articles
  3. for %%a in (*.txt) do set "_!random!_%%~na=%%a"
  4. (for /f "tokens=2 delims==" %%a in ('set _') do (
  5.   set /a n+=1
  6.   if !n! leq 8 (
  7.     setlocal
  8.     for /f "usebackq delims=" %%b in ("%%a") do set /a m+=1&set ".!m!=%%b"
  9.     set /a a=!random!%%!m!+1
  10.     for %%b in (!a!) do echo !.%%b!
  11.     endlocal
  12.   )
  13. ))>articles\new.txt
复制代码

作者: clcavril    时间: 2011-6-30 10:44

谢谢
验证可用




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