首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >linux文件系统中索引文件的Ruby进程

问linux文件系统中索引文件的Ruby进程
EN

Stack Overflow用户
提问于 2015-05-11 03:27:23
回答 1查看 62关注 0票数 0

我正在开发一个小型照片共享Rails应用程序,它将从本地文件系统上的照片库中读取和显示照片。

为了避免每次用户加载页面时都扫描文件系统,我希望设置一个每小时一次的cron作业,对所有文件进行索引,并将其存储在本地MySQL表中。

扫描本地文件系统和存储本地文件元数据(例如大小、文件类型、修改日期等)的最佳方法是什么?有方便的红宝石库吗?我还希望能够“观察”文件系统,以了解自上次扫描以来文件何时消失,以便可以从我的表中删除它们。

谢谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-05-11 03:33:36

您将需要查看inotify。

https://github.com/nex3/rb-inotify

您可以在一个文件或一个目录上设置一个watch (在Linux内核中注册一个回调),每当该文件/目录中的某些内容发生变化时,内核将立即通知您更改的内容。

以下列出了常见事件:https://en.wikipedia.org/wiki/Inotify

您会注意到,IN_CREATE + IN_DELETE是您正在寻找的事件。

侧注意:IN_CREATE只创建文件(它仍然是空的),您需要等到IN_CLOSE_WRITE被调用时才知道数据已经写入文件。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30159212

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档