Mac残留定时关机任务会强制关机,需通过系统设置调度界面停用、pmset命令清除repeat任务(sudo pmset repeat cancel)、shutdown -c取消待执行倒计时任务,以及在快捷指令中手动或批量删除相关自动化。

Mac上残留的系统内置定时关机任务会无视用户当前操作强行执行关机,导致文档未保存、远程连接中断或自动化脚本意外终止。这类任务通常由系统设置调度、pmset或shutdown命令创建,但不会在图形界面中显示为可管理条目,必须通过对应创建路径反向清除。
检查并清除系统设置中配置的调度任务
该路径创建的任务在“系统设置→电池/节能器→调度”中可见,但删除后仍可能残留底层触发器。
点击屏幕左上角苹果菜单 → 选择“系统设置”。
在左侧边栏选择“电池”(MacBook)或“节能器”(iMac等台式机型)。
向下滚动到底部,点击右下角的“调度”按钮。
若看到已勾选的“设定以下日期的睡眠、重新启动或关机”,先取消勾选 → 点击“好”保存变更;【此操作仅停用界面调度,不删除已注册的底层任务】。
打开终端(Spotlight搜索“终端”),输入以下命令查看当前所有pmset调度:
pmset -g sched
若输出中包含类似 shutdown 或 wake 的行,说明该任务仍被pmset注册;需继续执行后续pmset清除步骤。
用pmset命令彻底清除重复性定时关机/重启任务
pmset repeat指令注册的任务不会随图形界面关闭而消失,必须显式清空。
第一步:在终端中执行清除全部重复调度的命令:
sudo pmset repeat cancel
第二步:输入管理员密码(输入时无任何显示,属正常安全机制,输完直接回车)。
第三步:再次运行 pmset -g sched,确认输出为空或仅剩 wakeorpoweron(若你保留了定时开机);【若仍有shutdown行,说明未成功执行sudo权限命令】。
注意:pmset repeat cancel 会一并清除所有repeat类任务(包括开机、关机、重启),不可单独删除某一项。
取消尚未执行的shutdown倒计时任务
适用于通过 sudo shutdown -h +30 或 sudo shutdown -h 23:00 临时设置、但尚未触发的任务。
在终端中直接输入:
sudo shutdown -c
系统将广播提示:“Shutdown scheduled for … has been canceled”。
该命令仅对处于等待状态的shutdown任务有效,对已写入pmset repeat或系统调度的任务无效。
删除快捷指令创建的定时关机自动化
方法一:手动定位并删除
打开“快捷指令”App → 切换到“自动化”标签页 → 找到名称含“关机”“shutdown”或触发时间为固定时刻的个人自动化 → 左滑该条目 → 点击“删除”。
方法二:批量清除(避免遗漏)
在“快捷指令”App中,长按任意自动化 → 选择“编辑自动化” → 点击左上角“选择” → 勾选所有疑似关机类自动化 → 点击右下角垃圾桶图标 → 确认删除。
删除后,该自动化不会再在指定时间调用AppleScript执行关机指令。

















