Automator / Applescript:如何从文件夹别名获取原始文件

时间:2019-01-09 16:23:55

标签: applescript automator

我正在尝试创建一个上下文菜单快捷方式,以从原始项目或其别名中的VS Code中打开文件/文件夹

到目前为止,我已经能够创建一个Automator服务,该服务:

  • 接收选定的文件或文件夹
  • 在:运行任何应用程序
  • shell脚本:

open -n -b "com.microsoft.VSCode" --args "$*"

如何更改它以接受别名?

1 个答案:

答案 0 :(得分:1)

符号链接应该可以,但是Finder别名通常不起作用,因为大多数shell实用程序将它们视为小型数据文件,并且不知道如何解释它们。一种解决方案是添加 Run AppleScript 操作以在输入中查找别名并改用原始项,例如:

  • 服务在任何应用程序
  • 中接收选定的文件或文件夹
  • 运行AppleScript

    on run {input, parameters}
      set output to {} -- this will be a list of the output items
      tell application "Finder" to repeat with anItem in the input
        if anItem's kind is "Alias" then
          set the end of output to POSIX path of (original item of anItem as alias)
        else
          set the end of output to POSIX path of anItem
        end if
      end repeat
      return output
    end run
    
  • 运行Shell脚本,等等