核心用法
Batch Renamer 是一款面向开发者和进阶用户的命令行批量重命名工具,通过 npm install -g batch-renamer 全局安装后,可在终端对本地文件进行高效批量操作。
基础工作流:指定目标目录 → 选择命名模式(序号/日期/正则)→ 预览确认 → 执行重命名 → 必要时撤销。
| 核心功能 | 说明 |
|---------|------|
| 序号模式 | `{001}`、`{01}`、`{1}` 等自动补零序号 || 日期模式 | `{YYYY-MM-DD}`、`{HH}` 等时间戳变量 || 正则替换 | JavaScript 正则语法,支持捕获组与全局替换 |
| 预览机制 | `--preview` / `--dry-run` 先展示变更,确认后执行 |
| 撤销保护 | 自动备份文件名映射,支持 `undo` 回滚 |
配置化能力:支持 .batch-renamer.json 项目级配置,可预设预览模式、默认命名规则等。
显著优点
1. 安全性设计完善:强制预览 + 自动备份 + 一键撤销的三层防护,大幅降低误操作导致文件丢失的风险。
2. 灵活度极高:正则表达式支持复杂文本处理(如提取数字、删除空格、替换前缀),远超图形化工具的能力边界。
3. 开发者友好:纯 CLI 交互,适合集成到 shell 脚本或自动化工作流中,与 Git、CI/CD 等工具链无缝衔接。
4. 学习成本可控:变量语法直观({original}、{ext} 等),正则示例丰富,新用户可快速上手。
潜在局限
- 无图形界面:对非技术用户门槛较高,需熟悉终端操作。
- 单级撤销限制:仅支持撤销"最近一次"操作,复杂批量任务需分步执行。
- 备份依赖本地:映射文件存储于执行目录,若手动删除则无法回滚。
- 正则学习曲线:虽然功能强大,但复杂正则仍要求用户具备一定正则知识。
适合人群
- 摄影师/设计师:批量整理相机导出照片(如
DSC_前缀替换为日期序号)。 - 开发者/DevOps:代码仓库、日志文件、构建产物的规范化命名。
- 数据整理者:下载文件、数据集、文档档案的批量归档。
- 自动化爱好者:需要将重命名集成到 shell/zsh/fish 脚本或 cron 任务中。
常规风险
| 风险类型 | 说明 | 缓解措施 |
|---------|------|---------|
| 误重命名 | 正则表达式匹配范围过大导致意外变更 | 强制使用 `--preview` 检查 |
| 备份丢失 | 手动删除隐藏备份文件后无法撤销 | 避免清理未知文件,或额外 Git 版本控制 |
| 权限不足 | 系统/只读目录下执行失败 | 检查 `ls -la` 权限,必要时 `sudo` |
| 命名冲突 | 新文件名已存在导致覆盖 | 工具内置冲突检测,预览阶段可见 |
> 建议最佳实践:始终先执行 --preview,确认输出符合预期后再移除该标志正式运行;关键文件操作前配合 git 或 Time Machine 额外备份。