如何写个搜索网盘文件的网站?

公司内部用群晖 NAS 共享文件,大约 2T、100 万个文件,估计占比最大的是设计资源(如图片、PS 和 AI 源件)。 平时找文件得靠命名规律和个人印象, Windows 和 macOS 文件管理器自带的搜索很慢或不可用。有的时候我会 SSH 进入群晖,用 find(1) 建立个索引,然后配合 grep(1) 查找,速度很快。我想写个 Web 界面方便使用,只需要匹配文件名称(包括其路径),能预览图片最好了,有没有相关的技术和工具推荐?

现在查文件比较快的应该是 plocate

(rust的fd比find快但是好像不支持数据库

2 个赞

@guanghui.qu 原来在论坛推荐的 Everything 我找来用过,感觉很不错,但后面又没用了,我记得Everything是内置web服务器并可以设置web界面来使用的,搜索速度很快,但不知道Everything是如何创建索引的

Everything是直接利用NTFS文件系统的 node 数据,文件变动时文件系统已经更新内容,它只需要搜索文件系统的 node 数据即可。

没有文件系统支撑的情况下,传统的方法就是用额外的数据库建索引,但建索引本身是昂贵的,所以搜索速度比Eveything这种慢。

3 个赞