高级重命名可以实现复杂的批量重命名。支持通配符、宏(编辑录制)和正则表达式,能够插入序号和元数据字段,也可以使用 JS/VBS 脚本进行自定义处理。配置好的重命名规则可以保存为预设(上图左侧),便于之后再次使用。
相关的内置操作如下:
操作 | 快捷键 | 工具栏 |
---|---|---|
高级重命名 | Ctrl+3 | 操作/重命名 |
详见使用元数据重命名。
除了在高级重命名对话框中使用,预设也可以直接在工具栏中调用:
或者通过命令调用,例如:
Rename PRESET="文件编号"
如果预设有参数,可以通过 Rename
命令的 SCRIPTARG
参数进行指定,例如:
Rename PRESET="EncodingConvert" SCRIPTARG srcEncoding:1 dstEncoding:3
默认情况下,重命名对话框在打开时不会保留上次使用时的状态。通过对话框左上角的 最近重命名
按钮(F4)可以手动恢复上次状态。
如果希望对话框自动恢复上次状态,可以将相关按钮中的 Rename ADVANCED
命令替换为 Rename ADVANCED PRESET=last
。
如果只希望修改默认模式,则可以替换为下列命令之一:
- 查找并替换:
Rename ADVANCED PRESET=findrep
- 正则表达式:
Rename ADVANCED PRESET=regexp
- 正则表达式 + 查找并替换:
Rename ADVANCED PRESET=regexpfindrep
regexpfindrep
虽然在 v12.27 才被加入文档,但实际上在之前的版本中也是可用的。1
相较于其它方法,通过文件编辑器进行重命名更加灵活,可以组合手动编辑、查找替换、其它工具和脚本语言来进行处理。
DOpus 的重命名对话框支持导出文件名列表到剪贴板及导入,可以通过该功能实现文本编辑器重命名。例如:
也可通过此功能实现交换两组文件的名称。
在高级重命名中,选中“重命名选中文件夹中的文件”即可对选中文件夹中的文件进行重命名。可以使用一些字段来引用父文件夹的名称:
- 使用
{parent}
可以引用文件的父文件夹名,如上图所示; - 使用
{parent[数字]}
可以引用多级父文件夹名,例如{parent2}
可以引用父文件夹的父文件夹名; - 使用
{parentbase}
可以引用选中文件夹的父文件夹,或者通过{parentbase[数字]}
来引用多级父文件夹。 - 不过不能直接引用选中文件夹的名称。
需要注意的是,这个选项也会对选中文件夹中所有子文件夹的文件进行重命名,且不能关闭。
在 Rename
命令中,可以使用 RECURSE
来开启该递归模式,例如:
Rename PATTERN * TO {parent}--* RECURSE
-
PercentDecode(百分号解码)
解码百分号编码(URL编码),例如将
%E4%BD%A0%E5%A5%BD
和%u4F60%u597D
解码为你好
。 -
RandomString(随机文本)
替换新名称中的
{randomString}
为随机文本。 -
EncodingConvert(编码转换)
主要用于修复文件名乱码,例如将 GBK 编码的
嬻偺嫬奅 椉媀幃
修复为 Shift-JIS 编码的空の境界 両儀式
。支持 UTF-8、GBK、Big5、Shift-JIS 和 EUC-KR 编码。
-
例如将
邊緣行者
转换为边缘行者
。 -
例如将
边缘行者
转换为邊緣行者
。 -
例如将
一百二十三
转换为123
。支持大写数字。 -
例如将
123
转换为一百二十三
。支持大写数字。 -
例如将
123
转换为一二三
。支持大写数字。 -
在汉字和英文单词之间添加空格,例如将
你好world
转换为你好 world
。
在批量重命名时,可能会出现某一文件的新名称与另一文件的旧名称冲突的情况,比如同时将 文件夹1
重命名为 文件夹3
,将 文件夹3
重命名为 文件夹1
。部分重命名工具无法正确处理这种情况2,但 DOpus 和 Total Commander 都可以正确处理: