我正在尝试构建一个Automator工作流程(将其保存为服务,以便我既可以从上下文菜单访问它,又可以使用键盘快捷键调用它),其功能类似于Finder的内置“显示包”目录”命令,但该命令还将接受包的别名作为输入。该服务将满足以下条件:
仅当Finder的选择包含程序包或程序包别名时,此选项才可用。
服务不会像内置命令那样显示软件包目录本身的内容,而是显示位于软件包目录内的“目录”目录(如果存在)的内容。
如果Finder的选择是桌面上的软件包或别名,则应在新的Finder窗口中打开Contents目录。否则,应在包含所选内容的Finder窗口中打开Contents目录。
我的方法是让脚本首先确定文件是否为Alias,如果是,则告诉脚本显示原始内容。如果该文件不是别名,我想告诉脚本仅显示输入内容。
排除别名作为输入的可能性,并假设在Finder窗口中选择了输入包,我可以在同一窗口中成功编写一个脚本,以显示包内容文件夹的内容:
on run {input, parameters}
set my_output to {}
repeat with oneItem in input
tell application "Finder" to set target of window 1 to ((oneItem as text) & "Contents")
end repeat
return input
end run
当我尝试设置“ if ... then ... else”方案时,我失败了。
我正在使用所有相关软件的最新版本。
欢迎,我们不会忽略您,只是在等待可以回答您问题的人。
—
Ruskes
请附加失败的尝试(如果/然后/否则)。调试失败的原因可能会为您提供更快的解决方案。
—
Graham Miln