mac每日23点自动关机应优先用系统设置定时功能,它会触发原生保存弹窗;终端pmset命令虽可靠但跳过保存提示;快捷指令+applescript可实现关机前预警并保留保存流程。

你想让Mac在每天晚上11点自动关机,又怕Word文档、Excel表格或代码编辑器里未保存的内容被强制终止而丢失——系统本身不会抹掉你的工作,但【若应用未响应macOS标准保存协议,或你关闭了“询问是否保存更改”提示,关机流程会跳过弹窗直接退出进程】。
用系统设置安排每日定时关机(唯一触发原生保存弹窗的方式)
这是唯一能确保所有前台应用收到“是否保存更改”标准对话框的方法,适用于日常办公场景。它调用的是macOS图形界面层的关机流程,完全复现你手动点击苹果菜单→“关机…”的操作路径。
第一步:点击屏幕左上角苹果图标 → 选择“系统设置”。
第二步:左侧边栏中,MacBook用户点“电池”,iMac/Mac mini用户点“节能器”。
第三步:滚动到底部,点击右下角的“定时”按钮。
第四步:勾选“设定以下日期的睡眠、重新启动或关机”,右侧下拉菜单选“关机”,输入时间(例如23:00),再选择重复周期(如“每天”)。
第五步:点击“好”保存。下次到点,系统会先检查所有前台应用是否有未保存文档——若有,会弹出标准保存提示窗口;你点击“保存”或“不保存”后,才会继续关机流程。这一步不能跳过,也无法静默执行。
用终端命令设置每日重复关机(底层可靠,但绕过所有保存提示)
这个方法由系统守护进程 launchd 托管,不依赖用户是否登录,适合服务器环境或确定所有应用已启用自动保存(如VS Code、Notion、Pages默认开启)的用户。它不走图形界面路径,而是直接向内核发送关机指令。
方法一:打开“终端”(Command + 空格,输入“终端”回车)。
利用 macOS 原生能力实现本地语音识别与合成。通过 yap (Apple Speech.framework) 进行语音转文字,通过 say + ffmpeg 进行文字转语音。完全离线,无需 API 密钥。具备音质检测与智能选声功能。
方法二:清空已有调度,输入 sudo pmset repeat cancel → 回车 → 输入管理员密码(无字符显示,正常输入)。
方法三:设置每天23:00关机,输入 sudo pmset repeat shutdown MTWRFSU 23:00:00 → 回车 → 输密码;其中MTWRFSU代表周一到周日,时间格式必须含秒(:00),且必须是24小时制。
验证是否生效:输入 pmset -g sched,输出里应出现一行带23:00:00的 shutdown 条目。没有则说明命令执行失败,需检查拼写和空格。此时若文档未保存,关机时将直接退出全部应用,未存内容永久丢失。
用快捷指令+AppleScript实现关机前10秒预警(复用系统保存机制)
这个方案本质是模拟你手动点击“关机”菜单,因此会完整触发macOS原生的文档保存弹窗流程,同时加一层视觉提醒,避免你错过弹窗。
第一步:打开“快捷指令”App → 切换到“自动化”标签页 → 点击“创建个人自动化”。
第二步:选择“特定时间”作为触发条件 → 设定时间为每天22:59:50 → 开启“重复” → 点击“下一步”。
第三步:点击“添加操作” → 搜索并选择“运行 AppleScript” → 在脚本框中粘贴:osascript -e 'tell app "System Events" to shut down'。
第四步:点击“下一步” → 关闭“运行前询问” → 点击“完成”。
⚠️ 注意:首次运行需授权“完全磁盘访问”,否则脚本无法调用 System Events。该自动化仅在Mac已解锁且用户已登录状态下才会执行;若22:59:50时Mac处于睡眠状态,它不会唤醒设备,本次关机将跳过。










