高级功能类规则
高级功能类规则
想根据文件名特征做智能替换?扩展名被改错了,文件打不开?想用文件内容、大小等做复杂重命名?高级功能规则帮你实现。
规则一览
| 规则 | 功能 | 直观示例 | 适用场景 |
|---|---|---|---|
| 条件替换 | 根据锚点替换前后内容 | photo_20241225.jpg → img_20241225.jpg | 批量修改特定位置的字符;按条件替换不同内容 |
| 修正扩展名 | 自动识别并修正错误的扩展名 | 重要资料.zip111 → 重要资料.zip | 修复被改名的压缩包;识别伪装文件 |
| JS 脚本规则 | 用 JavaScript 实现复杂重命名逻辑 | note.txt → 项目计划_note.txt | 读取文件内容做文件名;根据文件大小智能分类 |
常见组合(多规则流水线)
高级功能通常配合其他规则使用,让你一次性完成复杂的批量操作。
常见组合:
-
修正扩展名 → 条件替换: 先修复被改错的扩展名,再用锚点统一调整文件名格式
原文件: photo_001.jpg111, photo_002.jpg111 ↓ 修正扩展名(识别为 .jpg) photo_001.jpg, photo_002.jpg ↓ 条件替换(锚点 "_",替换前面为 "img") img_001.jpg, img_002.jpg -
JS 脚本 → 序号: 先用 JS 脚本按文件大小分类,再加序号
原文件: report.pdf (5MB), photo.jpg (500KB) ↓ JS 脚本(按文件大小添加标签) [MEDIUM]_report.pdf, [SMALL]_photo.jpg ↓ 序号(3位数字) [MEDIUM]_report_001.pdf, [SMALL]_photo_002.jpg -
清理字符 → JS 脚本: 先清理文件名中的乱码,再用 JS 脚本读取文件内容做前缀
原文件: ??note.txt(内容首行是"项目计划") ↓ 清理字符(保留字母、数字) note.txt ↓ JS 脚本(读取首行做前缀) 项目计划_note.txt
💡 为什么要组合使用? 因为单个规则可能无法解决特别复杂的命名需求,组合使用能覆盖更多场景。比如先修复扩展名,再统一格式,最后加编号。
操作建议
- 🎯 先想清楚需求:你是要修复扩展名、按规则替换,还是需要读取文件信息做复杂判断?
- 🔍 从少量文件测试:先拿 5-10 个不同类型的文件验证一下,确认规则效果符合预期
- ⚠️ 留意文件差异:不同文件的特征可能不一样(有些有锚点、有些没有;有些是压缩包、有些不是),检查预览结果
常见问题
Q: 条件替换和 JS 脚本有什么区别?什么时候用哪个?
A:
- 条件替换:适合简单的文本替换逻辑,不需要写代码,配置简单。比如"把下划线前面的内容改成固定文字"
- JS 脚本:适合复杂的重命名逻辑,需要读取文件内容、判断文件大小、进行复杂计算等。需要会一点 JavaScript
建议:能用条件替换解决的就用条件替换,更简单。只有条件替换做不到的复杂需求,才考虑用 JS 脚本。
Q: 修正扩展名会修改文件的实际内容吗?
A: 绝对不会。修正扩展名规则只修改文件名(扩展名部分),不会读取或修改文件的实际内容。它通过读取文件头部的"魔术数字"(文件类型标识)来判断真实类型,然后修正文件名的扩展名部分。
你的文件内容是完全安全的。
Q: 处理大量文件时很慢,怎么优化?
A: 不同规则的性能特点不同:
- 条件替换:速度很快,纯文本处理,不读取文件
- 修正扩展名:需要读取每个文件的头部数据,处理大量文件时会慢一些(但有缓存机制)
- JS 脚本:看你的代码逻辑,如果涉及文件读取(
api.readTextFile)会比较慢
优化建议:
- 分批处理:每次处理 50-100 个文件,而不是一次几千个
- 先用预览验证逻辑,确认无误后再大批量处理
- JS 脚本中避免不必要的文件读取操作
Q: 可以同时使用多个高级规则吗?
A: 可以!规则会按照你添加的顺序依次执行。比如:
规则1: 修正扩展名 → 把 .zip111 改成 .zip
规则2: 条件替换 → 把下划线前的内容改成 "backup"
规则3: 序号 → 添加 001、002 编号
最终效果: photo_data.zip111 → backup_data_001.zip每个规则处理完后,下一个规则基于的是上一个规则改完后的文件名。建议先用预览验证整个流程,避免规则之间冲突。
💡 点击上面的规则名称可查看每种规则的详细用法和更多例子。