我需要使用可变大小的原始文件名重命名数千个rar文件。我必须通过保留原始文件名的前3个和后4个字符并在中间添加3个随机字符[数字]来使它们长10个字符。
“John Doe - Jane Doe - 19073275.rar”
“XXXX - XYXY- 98705674.rar
“Joh1273275.rar”
“XXX9795674.rar”
接下来,.bat应生成一个带有原始名称的.txt和每个文件下面的修改后的名称!
我知道这是可能的,但在编写它时我完全是愚蠢的。请帮忙!
答案 0 :(得分:2)
下面的批处理文件可以执行您想要的操作:
@echo off
setlocal EnableDelayedExpansion
for %%a in (*.rar) do (
set name=%%~Na
set num=00!random!
set newName=!name:~0,3!!num:~-3!!name:~-4!
ren "%%a" "!newName!%%~Xa"
echo "%%a" modified to "!newName!%%~Xa" >> log.txt
)
答案 1 :(得分:0)
我会编写一个脚本来以任何简单的方式生成名称(例如前6 +后4),然后检查是否要手动清理任何重复项(或者第二次移动中间,或者.. )。除非这是一个重复的工作(每天都这样做),否则不值得完全自动化。