Mac上可通过Automator的“文件夹动作”为下载、桌面等目录设置自动归类规则:按扩展名等条件静默移动文件,支持嵌套判断或AppleScript脚本,需手动创建目标文件夹并正确绑定路径。

Mac上给文件设置自动移动规则,核心是用Automator绑定“文件夹动作”,让下载、桌面等高频入口目录在有新文件进入时,按扩展名、名称、日期等条件自动搬走,全程后台静默执行,不弹窗不打断当前操作。
创建归类工作流程
打开“自动操作”App → 新建文档 → 选择“文件夹动作”类型 → 点击“选择文件夹”右侧下拉箭头 → 选中“下载”或“桌面”文件夹(注意:必须选真实路径,不能选别名)。
拖入“移动 Finder 项目”操作 → 先不点“完成”,留空目标位置,后续由条件分支决定去向。
拖入“如果”操作 → 点击“+”添加第一个判断条件 → 在左侧菜单选“文件扩展名” → 右侧选“包含” → 输入“pdf, docx, pages”(逗号后不加空格,否则匹配失败)。
点击该判断块下方的“然后”区域 → 拖入“移动 Finder 项目” → 点击“前往文件夹” → 输入“~/文档/已下载文档”,系统会自动补全为完整路径;若该路径不存在,Automator不会报错也不会创建,【必须提前手动建好这个文件夹】。
添加多条件分支
方法一:嵌套“如果”实现优先级判断
在第一个“如果”块的“否则”区域 → 再拖一个“如果” → 设定条件为“文件扩展名包含 jpg, png, heic” → “然后”里设移动目标为“~/图片/下载图”。
继续在第二个“否则”里嵌套第三个“如果”,处理压缩包:条件设为“文件扩展名包含 zip, rar, dmg” → 移动到“~/下载/压缩包”。
最后一层“否则”可接“移动 Finder 项目” → 目标设为“~/下载/待确认”,把无法识别的文件集中存放,避免误删。
方法二:用“计算”操作统一处理复杂逻辑(适合进阶用户)
删除所有“如果”块 → 拖入“运行 AppleScript” → 粘贴以下代码:
tell application "Finder" set theFiles to input repeat with f in theFiles set ext to name extension of f if ext is in {"pdf", "docx", "pages"} then move f to folder "文档:已下载文档" of home else if ext is in {"jpg", "png", "heic"} then move f to folder "图片:下载图" of home end if end repeat end tell
这段脚本比图形化“如果”更灵活,能处理大小写混杂的扩展名(如JPG和jpg),但要求目标文件夹路径必须用英文冒号分隔,且不能含空格。
绑定到目标文件夹
第一步:保存工作流程 → 文件名填“Download Sort” → 格式选“工作流程” → 存到“/Users/你的用户名/Library/Workflows/Applications/Folder Actions/”(Automator默认路径)。
第二步:打开访达 → 右键点击“下载”文件夹 → 选择“服务”→“文件夹设置”(新版系统可能显示为“快速操作”→“文件夹设置”)。
第三步:勾选“启用文件夹动作” → 点击“添加工作流程” → 找到刚保存的“Download Sort” → 点“选取”。
第四步:关闭窗口 → 此时规则已生效。往下载文件夹扔一个PDF,1秒内就会消失并出现在“文档/已下载文档”里。

















