macOS 15.5.1更新后Automator中的AppleScript无法正常工作
解决Monterey 15.5.1下AppleScript无法执行cd命令的问题
核心问题
Monterey 15.5.1版本的Terminal可能调整了默认工作目录规则,导致脚本中使用相对路径的cd MagicMirror命令无法定位到目标文件夹,进而让后续的npm run start在错误目录执行。
修复方案1:使用绝对路径(推荐)
将脚本中的相对路径替换为目标文件夹的绝对路径,彻底规避初始目录差异问题:
tell application "Terminal" activate -- 替换为你的MagicMirror文件夹实际绝对路径 set magicMirrorPath to "/Users/你的用户名/MagicMirror" set shell to do script "cd " & quoted form of magicMirrorPath delay 1 do script "npm run start" in shell end tell
修复方案2:合并命令,消除延迟依赖
将cd和npm命令合并为一行执行,不需要依赖delay等待目录切换,同时也能保证命令在目标目录执行:
tell application "Terminal" activate set magicMirrorPath to "/Users/你的用户名/MagicMirror" do script "cd " & quoted form of magicMirrorPath & " && npm run start" end tell
辅助排查步骤
- 手动打开Terminal,执行
cd MagicMirror,如果提示“没有那个文件或目录”,说明当前Terminal的初始目录不是MagicMirror的父目录,这就是脚本失效的直接原因。 - 检查Terminal偏好设置:打开Terminal → 偏好设置 → 通用 → 确认“新建窗口打开方式”是否为“个人目录”,若设置为其他路径,相对路径的cd命令必然失效。
内容的提问来源于stack exchange,提问作者rudiau
相关产品推荐
相关产品推荐

