Board logo

标题: [文本处理] [已解决]BAT重命名txt时如何在每个txt前面添加特定文档的的随机文字? [打印本页]

作者: echobat    时间: 2012-10-20 12:26     标题: [已解决]BAT重命名txt时如何在每个txt前面添加特定文档的的随机文字?

找了一圈来到批处理home,看了很多帖子,甚为感触!
今天工作中遇到一个问题!向大家请教!
问题是这样的!在文件夹里面N个txt文档!

现在想用批处理的方式重命名每个txt的名字,但是呢需要在每个txt的前面随机添加上特定文档中的随机文字
表达比较拗口!
主要是后半部分,比如特定的文档是标题.txt里面以行分割!

把这些文字随机添加到现有的文件夹需要重命名的txt的前面!

谢谢!
作者: apang    时间: 2012-10-20 14:04

  1. @echo off&setlocal enabledelayedexpansion
  2. set "Name=随机标题.txt"
  3. for /f "delims=" %%a in (%Name%) do set /a n+=1&set ".!n!=%%a"
  4. for /f "delims=" %%a in ('dir /b *.txt') do (
  5.   if /i not "%%a"=="%Name%" (
  6.     set /a r=1+!random! %% n
  7.     for %%b in (!r!) do ren "%%a" "!.%%b!%%a"
  8.   )
  9. )
  10. pause
复制代码
假设需要改名的文档位于D:\abc目录,就将代码保存为bat放到D:\abc目录下,"随机标题.txt"也放到D:\abc目录下。
作者: echobat    时间: 2012-10-21 08:43

回复 2# apang


    周末好,谢谢第一时间的回复!

经过几次轮番的测试下来,感觉不是太随机,有一定的规律,我明明看到random这个参数了
是不是我随机标题.txt不够用




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