当更改Unix中的文件夹的内容(删除,添加或编辑)时,会生成任何事件,并且可以捕获此事件以触发另一个脚本吗?
如果您使用的是Linux,则可以使用Inotify子系统来捕获此类东西。python,perl等有inotify
绑定,或者您可以在Shell脚本中使用inotifywait
程序(Inotify-Tools软件包的一部分)。
例如,如果我运行inotifywait -m /tmp
,则将观看/tmp
进行更改。如果我创建一个文件,我会看到:
/tmp/ CREATE foo
/tmp/ OPEN foo
/tmp/ ATTRIB foo
/tmp/ CLOSE_WRITE,CLOSE foo
,如果我删除该文件,我会看到:
/tmp/ DELETE foo
您可以编写一个shell脚本,该脚本从inotifywait
读取这些通知并相应地在它们上。