Mac可通过caffeinate命令临时禁用休眠、pmset按电源状态差异化设休眠阈值、快捷指令联动AppleScript实现应用启停自动控制休眠,三者协同达成“运行时防休眠、退出后自动恢复”目标。

如果您希望Mac在特定程序运行时避免自动进入睡眠,同时又能按需恢复休眠行为,则需区分“防止程序运行期间休眠”与“程序退出后自动恢复休眠策略”两类控制逻辑。以下是实现该目标的多种方法:
一、使用caffeinate命令临时阻止休眠
该方法适用于在终端中启动某程序(如视频转码、大文件下载)时,主动抑制系统进入睡眠状态,且不改变全局电源设置。命令执行期间,系统将忽略所有睡眠触发条件。
1、打开“终端”应用(位于“应用程序 > 实用工具”中)。
2、输入以下命令启动程序并阻止休眠:caffeinate -i /Applications/YourApp.app/Contents/MacOS/YourExecutable(将YourApp.app和YourExecutable替换为实际路径与可执行文件名)。
3、若需同时阻止显示器关闭与系统休眠,使用:caffeinate -dis /path/to/your/program。
4、当程序退出或手动终止终端会话后,休眠机制自动恢复生效。
二、通过pmset配置基于电源状态的差异化休眠阈值
该方法允许为“电池供电”与“接通电源”两种状态分别设定显示器关闭与整机休眠时间,从而在运行高负载程序时,仅调整当前供电模式下的延迟,避免影响日常便携使用习惯。
1、打开“终端”应用。
2、查看当前电源策略:执行pmset -g custom,确认当前battery(-b)与charger(-a)参数值。
3、为接通电源时延长休眠时间(例如程序常驻运行场景):sudo pmset -a sleep 60 displaysleep 15(设整机60分钟休眠、显示器15分钟关闭)。
4、为电池供电时保留激进节能策略:sudo pmset -b sleep 5 displaysleep 2(确保移动办公时不耗电过快)。
5、执行完毕后无需重启,新策略立即生效。
三、创建快捷指令实现“程序启动即禁用休眠,退出即恢复”自动化
该方法利用快捷指令的进程监控能力与AppleScript桥接,实现对指定应用生命周期的响应式电源管理,无需持续占用终端窗口。
1、打开“快捷指令”App,切换至“自动化”标签页。
2、点击右上角“+”,选择“创建个人自动化”,触发器选“App” → “已打开”,搜索并选择目标应用(如“Final Cut Pro”)。
3、点击“下一步”,添加操作,搜索“运行AppleScript”,点入编辑框,粘贴以下脚本:do shell script "caffeinate -u -t 3600 &"(此命令创建一个1小时保活令牌,避免长期阻塞)。
4、再次点击“下一步”,关闭“运行前询问”,点击“完成”。
5、重复上述流程新建另一自动化,触发器设为同一App“已退出”,操作中运行AppleScript:do shell script "killall caffeinate 2>/dev/null || true"。










