macos脚本编辑器支持applescript、javascript(for automation)等语言,可自动化重复任务;需确认应用是否支持自动化(查词典)、善用录制功能生成基础脚本、推荐用javascript编写更易维护的脚本,并导出为应用或绑定快捷键融入工作流。

macOS 脚本编辑器(Script Editor)是系统自带的自动化工具,支持 AppleScript、JavaScript(for Automation)、shell 脚本等多种语言,适合处理重复性操作,比如批量重命名文件、自动整理下载目录、控制其他应用行为等。关键在于选对语言、理解目标应用是否支持自动化,以及善用系统提供的词典和记录功能。
确认目标应用是否支持 AppleScript/JS
不是所有 macOS 应用都开放自动化接口。打开脚本编辑器 → 菜单栏「文件」→「打开词典」,在列表中查找目标应用(如 Finder、Safari、Pages、Numbers)。如果能看到对应词典,说明它支持 AppleScript 或 JavaScript(for Automation)命令。
- Finder、Mail、Calendar、Reminders 等原生应用支持度高,命令丰富
- 部分第三方应用(如 Adobe Creative Cloud、1Password)提供有限词典,需查阅其文档
- 没有词典 ≠ 完全不能控制,可结合 GUI Scripting(启用辅助功能后模拟点击)或 shell 命令间接操作
从录制开始:快速生成基础 AppleScript
脚本编辑器内置录制功能,适合新手起步。开启「自动化」→「录制」,执行一次手动操作(例如在 Finder 中新建文件夹、重命名一个文件),停止录制后会自动生成对应 AppleScript 代码。虽然生成的脚本较冗长,但能帮你直观理解语法结构和可用对象。
- 录制前确保目标应用已打开且处于前台,否则可能无法捕获动作
- 录制结果常含冗余语句(如 activate),可删减优化
- 录制不支持键盘快捷键或复杂条件判断,后续需手动添加逻辑
用 JavaScript(for Automation)写更现代、易维护的脚本
macOS 10.10+ 支持 JavaScript 作为自动化语言,语法更接近通用编程,数组操作、循环、函数定义比 AppleScript 更直观,也更容易调试。
- 在脚本编辑器中新建文档时,顶部语言选择「JavaScript」
- 调用应用对象方式为:Application("Finder"),而非 AppleScript 的 tell application "Finder"
- 示例:获取桌面所有 PDF 文件名
const desktop = finder.desktop;
const pdfs = desktop.files.where({nameExtension: "pdf"});
pdfs.name().forEach(name => console.log(name));
保存为应用或快捷键触发,真正融入工作流
写好脚本后,别只留在编辑器里。导出为「应用程序」可双击运行;配合「快捷键」(系统设置 → 键盘 → 快捷键 → 服务)或「快速操作」(在访达右键菜单中出现)提升效率;也可用「日历提醒」或「Automator 工作流」定时触发。
- 导出时勾选「保持为纯文本」便于后续修改,不勾选则打包成独立 app
- 若脚本需访问辅助功能(如 GUI 操作),首次运行会提示授权,需在「系统设置 → 隐私与安全性 → 辅助功能」中手动添加
- 调试阶段建议先用「运行」按钮测试,再导出;错误信息在底部结果栏显示,注意查看具体行号











