◆

Mac 自动操作自定义程序开启快捷键

2023-12-19 09:480

场景

  1. 打开 mac 自带的自动操作。

  2. 设置快速操作 mac自定义程序开启快捷键

  3. 点击左侧的使用工具,找到开启应用程序双击,在应用程序内选择要自定义开启的程序,上方的工作流程收到选择 没有输入,位于 任何应用程序

完整流程与关键设置

上面三步是核心,把中间容易卡住的地方补全:

第一步:打开自动操作(Automator)。它是 macOS 自带的,在 /Applications/Automator.app,Spotlight 搜「自动操作」或者 Automator 都能找到。

第二步:选文档类型 快速操作(Quick Action)。这一步选错了后面全白做。Automator 支持好几种文档类型:

  • 快速操作 — 会注册进系统,可以在 Finder 右键菜单、服务菜单里调用,也是唯一能绑定全局快捷键的类型。这是我们要的。
  • 工作流程(Workflow) — 只能在 Automator 里手动运行,没法绑快捷键。
  • 应用程序 — 保存成一个 .app,双击运行。这个也可以间接实现(配合别的工具绑快捷键),但不如快速操作直接。

第三步:配好顶部的三个下拉。这是最容易出错的地方,正文提到了但值得展开:

  • 工作流程收到 选 没有输入。默认是「文件或文件夹」,意思是这个操作需要先选中文件才能运行。选了「没有输入」它才能随时随地被触发。
  • 位于 选 任何应用程序。默认可能是 Finder,那样只在 Finder 里能触发。
  • 图像 和 颜色 是可选的,只影响它在右键菜单里的显示样式,不填也行。

第四步:加动作。左侧资源库里找 实用工具 → 启动应用程序,双击加到右侧工作区,然后在这个动作里选要打开的应用。

第五步:保存并命名。Cmd + S,起一个能认出来的名字,比如「打开 Termius」。快速操作保存在 ~/Library/Services/ 下,文件名就是你起的名字加 .workflow 后缀。

第六步:绑快捷键。这一步不在 Automator 里做,要去系统设置:

系统设置 → 键盘 → 键盘快捷键 → 左侧选 服务 → 展开 通用 分组 → 找到刚才保存的快速操作 → 点右侧的「无」或已有快捷键,按下想要的组合

Monterey 及之前的路径是 系统偏好设置 → 键盘 → 快捷键 → 服务。

常见问题

快速操作在服务列表里找不到。三个原因:

  1. 文档类型选错了(选了「工作流程」而不是「快速操作」)。这个没法改,只能重新建一个。
  2. 工作流程收到 不是「没有输入」。这种情况下它只在有选中项时出现,服务列表里也可能被归到别的分组下。
  3. 服务缓存没刷新。macOS 缓存了服务列表,新增后有时不立即出现。可以注销重登,或者重启 pbs 进程强制刷新:
/System/Library/CoreServices/pbs -flush

按了快捷键没反应。最常见的原因是权限没给够。macOS 的安全机制要求 Automator 有「辅助功能」权限才能控制其它应用。去 系统设置 → 隐私与安全性 → 辅助功能,确认 自动操作(Automator)在列表里且已勾选。如果列表里没有,第一次运行时系统应该会弹窗请求,被拒过一次就不再弹了,需要手动用 + 添加。

另一种情况是快捷键被占用了。系统级快捷键、其它应用的全局快捷键都可能抢先响应。换一个组合试试,或者在 键盘快捷键 里翻一遍看有没有重复。

触发有明显延迟。Automator 的执行需要启动一个工作流运行时进程,冷启动大约几百毫秒到一秒。这是它的固有开销,改不掉。如果对响应速度敏感,用下面说的其它方案。

更好的替代方案

说实话 Automator 做这件事有点重。它的定位是「可视化的自动化编排」,用来做「按快捷键打开某个 App」这么简单的事,启动开销和配置步骤都不划算。同样的效果有几条更轻的路:

1. Raycast / Alfred / Spotlight(推荐)

Raycast(免费)和 Alfred 都支持给任意应用绑定一个「热键」(Hotkey),配置就是两步:搜到应用 → 按下快捷键。执行是即时的,没有 Automator 那种延迟。

Raycast 里的路径是:Settings → Extensions → 搜应用名 → 在右侧 Record Hotkey 处按下组合键。

其实更常用的方式是根本不绑固定快捷键,而是用一个统一的唤起键(Raycast 默认 Option + 空格)加应用名首字母,比如 Option + 空格 然后输 te 回车打开 Termius。这样不用记一堆快捷键,肌肉记忆一次就够。

2. Keyboard Maestro / Hammerspoon

如果需求不只是「打开应用」,而是「打开应用 + 移到指定屏幕 + 调整窗口大小」这类组合动作,用这两个。Keyboard Maestro 是付费的图形化工具(正文里作者提到自己在用),Hammerspoon 是免费的 Lua 脚本方案:

-- ~/.hammerspoon/init.lua
hs.hotkey.bind({"cmd", "alt"}, "T", function()
  hs.application.launchOrFocus("Termius")
end)

launchOrFocus 的行为是:没开就打开,已经开了就切到前台。这比单纯的「启动应用程序」更符合日常需求——你按快捷键通常是想「去那个应用」,而不是「再开一个」。

3. 纯 shell + 第三方热键工具

打开应用的底层命令就是:

open -a "Termius"

open -a 后面跟应用名(不用带 .app)。已经在运行的话会切到前台,符合 launchOrFocus 的语义。

这条命令可以塞进任何支持执行 shell 的热键工具里,也可以在 Automator 里用「运行 Shell 脚本」动作代替「启动应用程序」动作,效果一样。

Automator 真正适合的场景

上面说了它不适合做简单的应用启动,那它什么时候值得用?

处理文件的批量操作,尤其是配合 Finder 右键菜单。这是它设计上的主场:

  • 批量转换图片格式和尺寸(更改图像类型 + 缩放图像)
  • 批量重命名(重命名 Finder 项目,支持添加序号、日期、替换文本)
  • 把选中的图片合并成一个 PDF(新建 PDF)
  • 把选中的文件压缩后放到指定目录

这些做成快速操作之后,在 Finder 里选中文件右键就能用,比开专门的软件快。这时候 工作流程收到 就该选「图像文件」或「文件或文件夹」,跟本文的配置正好相反。

给 Shortcuts(快捷指令)打底。macOS Monterey 之后 Apple 主推「快捷指令」App,功能上覆盖了 Automator 的大部分场景,而且能和 iOS 上的快捷指令同步。新做自动化优先考虑快捷指令,它同样支持绑全局快捷键(在快捷指令的详情面板里设置「添加键盘快捷键」)。Automator 现在更像是一个还没被淘汰的老工具,主要价值是它有些底层动作(AppleScript、Shell)比快捷指令更直接。

💬留言板0

还没有留言,来发表第一条吧~

PAGE LOAD / LIVEMac 自动操作自定义程序开启快捷键加载中