Mac上批量重命名文件有五种方法:一、访达内置功能,支持替换、添加、格式化文本;二、终端命令按时间排序编号;三、Automator创建可复用工作流;四、预览筛选后重命名;五、终端脚本替换指定字符串。

如果您在Mac上需要一次性更改多个文件的名称,但手动逐个修改效率低下,则可利用系统原生功能或命令行工具实现高效批量操作。以下是解决此问题的步骤:
一、使用访达内置批量重命名功能
该方法调用macOS自Catalina起集成的图形化重命名入口,无需安装第三方工具,适用于日常照片归档、文档编号、素材整理等场景,操作安全且即时可撤销。
1、打开访达,进入存放目标文件的文件夹。
2、按住Command键逐个点击选择不连续文件,或按住Shift键点击首尾文件以选中连续区间,也可直接按Command+A全选当前文件夹内所有文件。
3、右键任意一个已选中的文件,在弹出菜单中选择「重命名 X 个项目…」(X为实际选中数量;macOS Ventura及更新系统显示为此名称,旧版可能显示「给X个项目重命名…」)。
4、在重命名窗口中,从三种模式中选择其一:替换文本用于统一修改关键词;添加文本用于在开头或结尾插入固定前缀/后缀;格式化名称支持基础名加编号、日期等结构化命名。
5、若选择「格式化名称」,点击下拉菜单选择「名称和索引」,在「名称」栏输入共用基础名(如扫描件),设置起始编号与位数(如001),编号顺序将严格依照当前访达视图排列顺序执行。
6、确认预览区显示的新名称符合预期后,点击「重命名」按钮,系统立即执行全部操作。
二、通过终端命令实现高精度编号控制
当访达默认排序无法满足编号逻辑要求(如必须按修改时间升序、跳过隐藏文件、强制三位补零),终端命令可提供确定性更强的处理能力,尤其适合处理数百个以上文件。
1、打开「应用程序 → 实用工具 → 终端」。
2、输入cd命令切换至目标文件夹,例如:cd ~/Documents/Photos_2025。
3、执行以下脚本为所有.jpg文件按修改时间升序编号并补零至三位:ls -t *.jpg | awk '{printf "mv \"%s\" \"Photo_%03d.jpg\"\n", $0, NR}' | bash。
4、若需按创建时间排序编号,将-t替换为-U(macOS 13+支持),或改用mdls配合脚本提取元数据。
5、执行前务必先运行不带| bash的前半段命令,仅输出重命名指令预览,确认无误后再执行最终操作。
三、借助Automator创建可复用重命名工作流
该方法适合需重复执行相同命名逻辑的用户,例如每日导出的截图均需自动附加当天ISO格式日期与部门缩写,工作流保存后即可在任意文件夹中一键调用。
1、打开「应用程序 → Automator」。
2、新建一个「快速操作」文档,在左侧库中搜索「将每个项目重新命名」并拖入右侧操作区。
3、在动作配置面板中选择重命名方式,如「添加文本」可在文件名前插入2026_Q1_,或选择「编号项目」并设定起始值与位数。
4、勾选「在Finder中可用」,保存为「添加季度前缀并编号」等易识别名称。
5、后续在任意文件夹中选中文件,右键「快速操作」子菜单即可调用该流程,无需重复配置。
四、利用预览应用联动筛选后批量重命名
此方法适用于需先核对图片内容(如拍摄对象、时间、质量)再统一命名的场景,避免因误选导致重命名错误。预览用于快速查看与筛选,访达负责执行批量操作。
1、在访达中打开存放图片的文件夹,按住Command键逐一点击需处理的图片,或按Command+A全选。
2、右键任意一张已选图片,选择「用‘预览’打开」,所有选中图片将在预览中以缩略图栏形式并列显示。
3、在预览左侧缩略图栏中,按住Command键点击确认需保留重命名的图片缩略图,再次右键选择「在访达中显示」。此时访达将自动跳转并仅选中该子集。
4、右键这些经预览筛选后的图片,选择「给 X 个项目重命名…」(X为实际数量)。
5、在重命名窗口中选择「格式」模式,输入基础名称(如产品图),设置起始编号为1,位数为3,位置选「名称后」,预览显示为产品图_001.jpg等。
6、点击「重命名」按钮,系统立即更新全部文件名。
五、使用终端脚本替换文件名中指定字符串
当需统一修改所有文件名中某一段固定文字时(如将“副本”全部改为“备份”),终端循环命令可精准定位并替换,且支持通配符匹配与大小写敏感控制。
1、打开「应用程序 → 实用工具 → 终端」。
2、输入cd命令切换至目标文件夹,例如:cd ~/Downloads/Project_Files。
3、执行以下for循环命令,将所有文件名中首次出现的“old”替换为“new”:for file in *old*; do [[ -e "$file" ]] && mv "$file" "${file/old/new}"; done。
4、若需全局替换(不止首次出现),使用双斜杠语法:${file//old/new}。
5、执行完毕后运行ls命令查看结果,确认文件名已更新。











