当文件夹内容被修改或改变时启动执行命令

当文件夹内容被修改或改变时启动执行命令

过去两天我一直在尝试获取 launchd plist 来执行脚本“程序”当我桌面上的文件夹内容发生修改或更改时。我已经经历了大量的配置设置并尝试了Users/me/Desktop/folderinquestionUsers/me/Desktop/folderinquestion(带和不带尾部斜杠)。

该脚本仅在添加或删除某些内容时执行,但它无法识别文件和子目录的更新时间. launchd 真的是我让它工作的最后希望,我已经用尽了文件夹操作、bash 脚本、无法卸载的 linux 方法等等。

我用过林贡创建我的 plist 并遵循youtube 教程。任何帮助都将不胜感激。

这是我现在所拥有的,就像我说的,当文件夹被修改或更改时不起作用

在此处输入图片描述

主意:

考虑创建两个相互引用的单独 plist,一个 plist 可以监视文件夹的增减,当发生增减时,它可以创建另一个 plist 来监视文件夹中的每个文件,这也可以是递归的,并计入子目录。

答案1

我认为不launchd支持这种级别的监控;您可以监视单个文件,也可以监视目录中的新增内容,但无法对整个目录树进行完整inotify/ fam/gamin式监视。您需要作为独立守护进程运行,并使用 BSDkqueue或 Mach 端口(或使用famgamin为您执行此操作)来监视您的树。

相关内容