关于编写AppleScript实现Automator服务打开别名新窗口的咨询
优化版:在新Finder窗口打开选中别名的Automator服务脚本
嘿,我来帮你把这个Automator服务的脚本给捋顺完善下~ 看你提到自己AppleScript能力有限,完全不用客气,咱们一步步来搞定它。
你的核心需求应该是:通过自定义快捷键触发Automator服务,接收Finder里选中的文件/文件夹别名,然后在新窗口打开它们对应的原始项目对吧?我把你没写完的脚本补全,还加了一些实用的异常处理和体验优化:
on run {input, parameters} repeat with aFile in input tell application "Finder" try -- 获取别名指向的原始文件/文件夹 set origFile to original item of aFile -- 创建新Finder窗口并定位到原始项目 set aWindow to make new Finder window set aWindow's target to origFile -- 让新窗口自动前置,不用手动切换 activate on error errMsg number errNum -- 处理非别名文件或其他错误情况 display dialog "打开失败:" & errMsg buttons {"确定"} default button 1 with icon caution end try end tell end repeat end run
几个关键细节说明:
- 异常防护:加了
try...on error块,要是你不小心选中了非别名的文件,脚本不会直接崩溃,还会弹出提示告诉你哪里出问题了。 - 窗口前置:
activate命令能让新打开的Finder窗口立刻跳到前台,操作起来更顺手。 - 批量处理:
repeat循环会遍历所有选中的别名,不管选几个,每个都会打开对应的新窗口。
服务配置小提醒:
- 在Automator里创建「快速操作」的时候,记得把工作流程收到当前设为「Finder中的文件或文件夹」,这样服务才会正确接收Finder的选中项。
- 设置快捷键的时候,尽量选不跟系统或其他应用冲突的组合,比如
⌃⌥⇧O这类,避免触发混乱。
如果你的脚本原本有特定的问题(比如窗口定位不对、报错),可以再补充细节,我再帮你调整~
内容的提问来源于stack exchange,提问作者Tetsujin
相关产品推荐
相关产品推荐

