我需要一些代码,将重命名文件夹中的多个(批量或所有)文件。
我找到了一个batch file script;但是,它只使用数字重命名;这并不完全是我要找的。尽管如此,我还是下载并测试了它。
我不完全理解如何修改这个.bat文件代码以使用字符串(而不仅仅是数字)来重命名。
示例:
在一个文件夹中有100个图像,所有的图像都有一些数字或名称。假设所有图像都属于"john“,所以我想用"john+ a random string”重命名所有图像。
“随机字符串”来自一个包含3000个英文单词的数组(从字典下载)。
在脚本中,3000个名字是固定的,除了第一个名字,它是可设置的(john,mary,sai,pavan等)
最终结果是重命名所有的图像文件;即: john good,john bad,john eating,john idiol,john silly等。
如何做到这一点呢?
发布于 2014-05-31 01:38:38
@echo off
setlocal EnableDelayedExpansion
set baseName=john
rem Load the list of 3000 words
set num=0
for /F %%a in (dictionary.txt) do (
   set /A num+=1
   set word[!num!]=%%a
)
rem Rename the files
for /F "delims=" %%a in ('dir /B /A-D *.*') do (
   set /A randomIndex=!random! * num / 32768 + 1
   for /F %%r in ("!randomIndex!") do ren "%%a" "%baseName% !word[%%r]!%%~Xa"
)https://stackoverflow.com/questions/23958335
复制相似问题