Applescript等待关闭(我不喜欢)

时间:2011-07-26 07:47:41

标签: concurrency applescript launch

在Applescript中,我有以下内容:

do shell script "/Applications/Vidalia.app/Contents/MacOS/Vidalia"
do shell script "/Applications/Firefox_3.6/Firefox.app/Contents/MacOS/firefox-bin -P Anon"

它完美运行,但问题是它会等待Vidalia关闭然后再启动Firefox。我想用一个脚本同时打开两个。我真的不懂语言,所有的搜索都没有发现。我怎样才能同时打开这些?毕竟,这就是重点。

非常感谢任何帮助。

2 个答案:

答案 0 :(得分:2)

尝试使用open命令启动应用程序:

do shell script "open /Applications/Vidalia.app"
do shell script "open /Applications/Firefox_3.6/Firefox.app --args -P Anon"

答案 1 :(得分:1)

使用do shell script,AppleScript将等待您正在运行的进程的响应。当你调用它时,没有其他选择,只能等待进程终止,即应用程序关闭时。

要解决此问题,您需要将shell命令替换为不提供响应并立即终止的命令。所以试试这个:

do shell script "/Applications/Vidalia.app/Contents/MacOS/Vidalia &> /dev/null & /Applications/Firefox_3.6/Firefox.app/Contents/MacOS/firefox-bin -P Anon &> /dev/null &"

我没有使用您正在使用的应用程序对此进行测试,因为我没有安装;相反,我测试了iTunes和Bento,它正如你所希望的那样工作。