【问题标题】:How to pause execution of applescript for some time?如何暂停applescript的执行一段时间?
【发布时间】:2015-11-05 09:45:42
【问题描述】:

我在 Automator 中有一个小applescript:

do shell script "osascript ~/Focus-On.scpt"
delay 60
do shell script "osascript ~/Focus-Off.scpt"

基本上,我想执行第一个 shell 脚本,然后一分钟后执行第二个。

但 Automator 会毫无延迟地执行这两项操作。如何解决?

【问题讨论】:

    标签: applescript automator


    【解决方案1】:

    试试load script的方式,这在我的机器上有效:

    set homeFolder to path to home folder as text
    set scriptOn to load script alias (homeFolder & "Focus-On.scpt")
    run scriptOn
    delay 60.0
    set scriptOff to load script alias (homeFolder & "Focus-Off.scpt")
    run scriptOff
    

    【讨论】:

    • 谢谢,它可以在 Focus-Off.scpt 中使用简单的命令,但是当有很多代码时,它会毫无延迟地执行,我只是将延迟的工作传递给 shell,使用“sleep " :)
    【解决方案2】:

    我发现的最简单的方法:只是将作业传递给 shell:

    do shell script "osascript ~/Focus-On.scpt; sleep 10; osascript ~/Focus-Off.scpt"
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多