如何在修改给定文件时设置AppleScript运行?

时间:2011-03-08 16:00:08

标签: applescript

我知道可以将applescripts设置为作为文件夹操作运行,但有没有办法让它们作为文件操作运行?是的,我知道我可以解决这个问题,只需创建一个新文件夹,将脚本放入其中,然后作为文件夹操作运行,但我想知道是否可以这样做。

4 个答案:

答案 0 :(得分:2)

我将此问题交叉发布到Apple's Applescript discussion board,其中一些用户提供了一些仅使用系统资源但没有第三方应用程序的解决方案。点击链接查看答案。

基本上,您需要使用launchd来查看文件并在文件更改时启动脚本。然后,您需要制作一个.plist来描述要运行的脚本以及要监视的文件或目录。

答案 1 :(得分:1)

没有简单的内置方法可以做到这一点。但是有很多方法可以设置Applescript来运行。但是一般来说,你必须做一些非Applescript编码。

查看此提示和OSXHints中的信息:

http://hints.macworld.com/article.php?story=20060817044149264

他们有一个Python脚本,演示如何使用fsevents.so监视文件更改。然后,您只需修改Python以调用您的Applescript(或者只是使用Appscript从Python中执行脚本编写)。

或者,您可以让程序以特定间隔检查文件,然后在文件更改时运行。这个提示描述了Perl:

http://hints.macworld.com/article.php?story=20031001073403810

答案 2 :(得分:0)

我找到了一种可行的方法。

Shell脚本:

find watchedfilepath -mtime -1 -exec cp {} watchedfolderpath ';'

在Automator中创建一个日历事件以运行此Shell脚本,它将检查文件。如果在最近24小时内已对其进行修改,则它将被复制到监视的文件夹中。然后在Automator中创建一个动作以将其移至废纸((否则,下次运行Shell脚本时它将不起作用)。

在监视的文件夹上设置文件夹操作,以监视添加的新项目,然后它将通知您。我创建了一个脚本,向我发送电子邮件,并将其放入“库/脚本”中的“文件夹操作”文件夹中。它像一种对待。

答案 3 :(得分:-1)

这是一个古老的问题,但是MacOS中的Apple Automator工具确实做到了 完全 。您可以将其设置为监视文件夹并执行Applescript,Shell脚本等。