Mac每日23点自动关机需三步联动:先在系统设置→节能器→调度中设定每日关机并连接电源;再用快捷指令创建“立即关机”动作并添加到Touch Bar;最后借助BetterTouchTool运行AppleScript读取pmset调度时间,动态显示倒计时。

你想让Mac每天晚上11点自动关机,同时在Touch Bar上一键触发或实时查看倒计时状态,避免反复打开终端或设置界面——这需要组合系统调度、快捷指令与触控栏自定义三步联动,其中Touch Bar本身不支持原生倒计时显示,但可通过「快捷指令小组件」实现状态反馈和手动触发。
用系统设置配置每日定时关机
这是关机动作的底层保障,必须先完成,否则Touch Bar上的操作只是空转。
点击屏幕左上角苹果图标 → 选择“系统设置”。
左侧边栏中,MacBook用户点“电池”,iMac/Mac Studio用户点“节能器”。
向右滚动到底部,点击右下角的“调度”按钮。
勾选“设定以下日期的睡眠、重新启动或关机”,右侧下拉菜单【务必选择“关机”】,输入时间(例如23:00),重复周期选“每天”。
点击“好”保存——注意:此功能【必须连接电源适配器】,电池供电时MacBook可能跳过关机直接进入睡眠,且不会弹出任何警告。
创建快捷指令实现Touch Bar可调用关机
系统设置只管定时执行,但无法在Touch Bar上呈现。快捷指令是唯一能将关机动作映射到触控栏的原生路径。
打开“快捷指令”App → 点击右上角“+”新建快捷指令 → 命名为“立即关机”。
点击“添加操作” → 搜索并添加“关机” → 在弹出选项中选择“不询问确认”。
点击右上角“完成”保存。
回到主界面,长按刚创建的“立即关机”快捷指令 → 选择“添加到触控栏” → 系统会自动在Touch Bar最右侧生成一个关机图标按钮。
这一步完成后,只要Mac已唤醒且未休眠,按下Touch Bar上的该按钮就会立刻执行关机流程;若当前有未保存文档,系统仍会弹窗确认,不会强制中断。
让Touch Bar显示关机倒计时(需AppleScript辅助)
macOS不提供原生倒计时小组件,但可通过AppleScript读取系统调度时间并生成动态文本,再绑定到Touch Bar——前提是已安装第三方工具BetterTouchTool(BTT),因系统原生快捷指令无法实时刷新Touch Bar文本。
第一步:下载安装BetterTouchTool(官网btt.app),启动后允许辅助功能权限。
第二步:在BTT中点击“Touch Bar”标签页 → 点击左下角“+”添加新条目 → 类型选“AppleScript (Text)”。
第三步:粘贴以下脚本(该脚本自动读取pmset中最近一条shutdown任务时间,并计算剩余分钟数):
osascript -e 'set now to current date' -e 'set sched to do shell script "pmset -g sched | grep shutdown | head -n 1"' -e 'if sched is "" then return "无定时关机"' -e 'set tStr to word 3 of sched' -e 'set tDate to date (word 1 of sched & " " & word 2 of sched & " " & tStr)' -e 'set diff to (tDate - now) div 60' -e 'if diff第四步:设置刷新间隔为“每60秒”,勾选“显示在Touch Bar上”,拖拽该条目到你想要的位置(如中间区域)。
注意:该脚本依赖系统调度已存在且格式标准,若pmset -g sched无输出或时间字段错位,将显示“无定时关机”;首次运行前请确保已通过系统设置或终端成功配置了至少一条shutdown任务。

















