mac设置特定app退出后自动关机有三种原生方案:优酷客户端可直接勾选内置“全部任务完成后关机”;通用app推荐用快捷指令+applescript轮询检测进程退出(如while pgrep -x "final cut pro"; do sleep 5; done; osascript -e 'tell app "system events" to shut down');长期稳定需求则用launchd监听saved application state目录变化并执行关机。

你想让Mac在某个特定软件(比如Final Cut Pro导出完成、Python脚本跑完、或Chrome下载结束)退出后立即关机,不手动干预、不依赖值守,系统原生就能实现。
用快捷指令+AppleScript轮询检测APP退出状态
这是最通用、最易上手的方法,适用于任意图形界面APP,包括Chrome、Sketch、DaVinci Resolve、甚至自定义命令行程序封装的GUI应用。
打开“快捷指令”App → 点击右上角“+”新建快捷指令 → 命名为“Final Cut Pro退出后关机”(按实际APP改名)。
添加操作:搜索并添加“运行Shell脚本”,在脚本框中粘贴以下内容:
while pgrep -x "Final Cut Pro" > /dev/null; do sleep 5; done; osascript -e 'tell app "System Events" to shut down'
点击右上角“下一步”→ 输入描述(如“监控FCP并关机”)→ 点击“完成”保存。
【注意】脚本中"Final Cut Pro"必须与“活动监视器”里显示的精确进程名完全一致——区分大小写、空格、版本号;若APP带后缀如"Final Cut Pro Beta",必须完整填写,否则检测失败,关机永不触发。
用launchd配置守护进程监听APP并执行关机
适合长期稳定运行、对可靠性要求高的场景,比如服务器环境下的渲染任务、自动化数据处理流程。它不依赖用户登录态,只要系统启动,plist就加载生效。
第一步:在终端中创建配置目录
mkdir -p ~/Library/LaunchAgents
第二步:用nano创建plist文件
nano ~/Library/LaunchAgents/com.user.fcpquit-shutdown.plist
第三步:粘贴以下内容(以Final Cut Pro为例):
第四步:保存后加载配置
launchctl load ~/Library/LaunchAgents/com.user.fcpquit-shutdown.plist
该配置通过监听Final Cut Pro的Saved Application State目录变化,比单纯轮询更轻量、更及时;【关键前提】必须确保Final Cut Pro启用“退出时保存状态”(默认开启),否则WatchPaths无变化,关机不会触发。
优酷Mac客户端内置功能直接启用
如果你的目标就是优酷客户端下载任务完成后关机,这是唯一无需脚本、不碰终端、点几下就生效的路径。
打开优酷Mac客户端 → 点击右上角齿轮图标进入“设置” → 切换到“基本设置”标签页 → 勾选【全部任务完成后关机】。
这一步操作起来很简单,直接勾选就行。
该选项仅对优酷自身的下载/缓存任务生效;其他APP不识别此开关,勾选后无需额外操作,任务列表清空即触发关机流程。











