Big Sur下AppleScript关机脚本导致T480重启问题求助
针对T480 Big Sur关机脚本问题的解决办法
方案一:修复「System Events shut down」重启进BIOS问题
原脚本调用System Events的shut down指令时,在黑苹果Big Sur下大概率触发重启进BIOS,这是因为该指令和T480的ACPI电源管理交互存在兼容性问题。可以换用更底层的shell关机命令,绕开系统层面的电源调用逻辑:
do shell script "shutdown -h now" with administrator privileges
-h now表示立即停止系统并关机,比AppleScript的shut down指令更直接- 需要添加
with administrator privileges,因为shutdown命令需要管理员权限,首次运行会弹出权限验证,验证后后续即可正常执行
方案二:修复「点击苹果菜单」脚本报错问题
报错Can’t get menu bar 1主要是两个原因:Big Sur的权限管控更严格,或者脚本未正确定位系统菜单归属的进程。解决步骤如下:
补全权限:
打开「系统偏好设置」→「安全性与隐私」→「隐私」→「辅助功能」,确保Quicksilver和你用来编辑/测试脚本的程序(比如Script Editor)已被添加并勾选权限。修改脚本定位菜单:
系统菜单属于Finder进程,直接指定进程可以避免找不到菜单的问题,修改后的脚本:
tell application "System Events" tell application process "Finder" click menu bar item "Apple" of menu bar 1 delay 0.2 -- 加短暂延迟确保菜单展开 click menu item "Shut Down…" of menu 1 of menu bar item "Apple" of menu bar 1 end tell end tell
- 添加
delay 0.2是为了给菜单展开留足够时间,避免因为点击过快导致找不到菜单项 - 明确指定
Finder进程的菜单,避免系统误判当前活跃进程的菜单
内容的提问来源于stack exchange,提问作者atw58
相关产品推荐
相关产品推荐

