【问题标题】:Automator could not access required dataAutomator 无法访问所需的数据
【发布时间】:2020-08-14 15:42:14
【问题描述】:

我想在 AppleScript 中运行 Automator 工作流程。当我使用终端时,我可以:

/usr/bin/automator -i /Users/.../filename /Users/.../worfklowname.workflow/

但是当我通过

作为AppleScript的一部分执行此操作时
do shell script "/usr/bin/automator -i /Users/.../filename /Users/.../worfklowname.workflow/"

我收到一条错误消息,指出 Automator 无法访问所需的数据。这里有什么问题?

谢谢!

【问题讨论】:

  • 看起来这可能是您使用的任何工作流程的问题 - 像显示参数这样简单的东西对我有用。
  • 我怀疑问题在于您将事情纠缠在一起的方式。您正在使用 automator 运行一个 AppleScript,该 AppleScript 运行一个运行 automator 工作流程的 shell 脚本;你把事情交给了这么多,难怪你会摸索。如果你展示更多你使用的脚本(并给出一些你想要做什么的想法),我们也许可以解开它。
  • 我调用的工作流程是:stackoverflow.com/questions/63129932/… 但是我调用它的 AppleScript 有几千行代码
  • @Cerd:哦,那是 我的 帖子,对。我想知道周围的 AppleScript 的原因是我认为如果你简单地使用 Run Workflow 操作(而不是间接链),事情可能会更好。这意味着要打破 AppleScript 来调用一个新的动作,我不知道这是否可行,因为我不知道结构。
  • 是的,这就是您的工作流程 :) 但是无法使用“运行工作流程”操作,因为我调用它的位置嵌套在一组 if 语句中

标签: applescript automator


【解决方案1】:

found一个解决办法:

set startpath to "Macintosh HD:Users:...:filename"
set workflowpath to "Macintosh HD:Users:...:workflow"
set qtdstartpath to quoted form of (POSIX path of startpath)
set qtdworkflowpath to quoted form of (POSIX path of workflowpath)
set command to "/usr/bin/automator -i " & qtdstartpath & " " & qtdworkflowpath
do shell script command

这可能是由于所有的纠缠,这个解决方案看起来也有点不直截了当:-D

【讨论】:

    猜你喜欢
    • 2021-09-22
    • 1970-01-01
    • 2017-02-12
    • 1970-01-01
    • 2020-11-03
    • 1970-01-01
    • 2015-09-07
    • 2021-08-10
    • 2018-07-14
    相关资源
    最近更新 更多