【问题标题】:Applescript folder actions support for changed / altered / updated files?Applescript 文件夹操作是否支持更改/更改/更新的文件?
【发布时间】:2011-06-25 05:57:38
【问题描述】:

文件夹项目更改时的文件夹操作是否不存在?我希望我的脚本在我更新文件时运行。我在documentation 中没有看到任何对它的引用。我是否缺少某种替代方案,因为没有这种接缝非常疯狂。

on adding folder items to this_folder after receiving added_files
    do shell script "anything"
end adding folder items to

on removing folder items from this_folder after losing removed_files
    do shell script "anything"
end removing folder items from

-- does not exits?!?
on changing folder items in this_folder after updating changed_files
    do shell script "anything"
end changing folder items in

【问题讨论】:

    标签: applescript


    【解决方案1】:

    不,不直接存在。但是,可以使用空闲处理程序来完成类似的操作,该处理程序会监视文件夹中的文件以查看其修改日期是否已更改,并对已更改的文件执行操作。

    【讨论】:

      【解决方案2】:

      文件夹操作有一个替代方法。您使用 launchd 并设置监视路径。使用监视路径,只要您正在监视的文件夹发生更改,您的代码就会运行。文件夹操作和launchd 操作之间的最大区别在于,使用launchd 操作您不知道哪些文件已更改。你只知道有些事情发生了变化。因此,您的代码必须弄清楚实际的更改是什么,但这在您的情况下应该不会太难,因为如果您正在寻找更新的文件,您只需检查文件的修改日期。

      如果你想尝试的话,你可以在谷歌上搜索 launchd 并查看路径。

      【讨论】:

      • 我已经探索了所有选项,以供将来参考,以及其他人试图做我想做的事。 Launchd 缺乏支持,并遇到与文件夹操作相同的问题。
      • 我不确定你的意思 ThomasReggi。您要求一种在监视文件夹中更改/更新文件时运行脚本的方法。 Launchd 就是这样做的。那么“launchd 缺乏支持”到底是什么意思?
      【解决方案3】:

      rsync -va '/source/path/' '/destination/path/' 怎么样,使用 Lingon,将这个简单的命令设置为用户守护程序,例如每 10 秒运行一次?

      【讨论】:

        【解决方案4】:

        我发现了一种使用 Automator 轻松完成此操作的棘手方法,并且仅在某些情况下有效,因此请尝试一下,看看它是否有帮助。当您在 OSX 中创建/修改文件夹内容时,一个名为 .DS_Store 的隐藏 OS 文件会写入该文件夹,它对用户来说是一个无用的文件,但它可以触发文件夹操作。话虽如此,我在文件夹操作的 Run Shell Script 操作中使用了 rsync。操作完成同步后,我将删除 .DS_Store 文件。

        这是我的例子:

        rsync -r /Users/path/to/source/* /Users/path/to/destination
        rm -f /Users/path/to/source/.DS_Store
        

        然后,当您下次修改该目录中的文件/文件夹时,文件夹操作将开始,该过程将重复。

        我希望这会有所帮助...

        【讨论】:

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