在ruby中编写文件更改侦听器

时间:2011-08-05 10:21:07

标签: ruby directory listener

我想写一个lister(ruby模块)来识别文件夹中的文件创建。我的方案如下

  • 我有一个名为(files)的文件夹
  • 我有一个rails项目,里面会创建一个文件(demo.txt) 文件夹('文件')
  • 我需要编写一个监听器来识别文件更改并启动 阅读文件(demo.txt)

我不知道从哪里开始创建这个ruby模块。请任何人帮助我指导我走正确的道路。

这是我使用的ruby版本'ruby 1.8.7(2010-06-23 patchlevel 299)[i686-linux]'

提前致谢

欢呼声

sameera

1 个答案:

答案 0 :(得分:7)

有一些小型库,您可以利用,学习或构建,例如

  

敏捷开发工具,用于监视目录树,并在修改观察文件时触发用户定义的操作。它最典型的用途是连续测试,因此它是自动测试的一种更灵活的替代方案。

  

目录监视器通过以某个间隔扫描目录并基于用户提供的glob模式生成文件列表来进行操作。随着文件列表从一个间隔更改为下一个间隔,将生成事件并将其分派给已注册的观察者。支持三种类型的事件 - 添加,修改和删除。

  

Guard是一个命令行工具,可以轻松处理文件修改事件(FSEvent / Inotify / Polling支持)。

  

这是inotify Linux内核子系统的简单包装器,用于监视文件和目录的更改。它使用FFI gem来避免编译C扩展。