我的文件乱七八糟,我试着把它们组织到文件夹中,用递归类分解的方式描述它们的名称,但后来当我去寻找它时,我很难再次找到它(一个文件可能存在于许多文件夹中)。
什么文件系统可以让我通过标签的组合而不是使用文件夹来查找我的文件?
如果有这样的文件系统,我不确定OSes将如何应对,因为它如此严重地依赖于文件夹系统。我遇到了tag2find,这不算太糟糕;它暂时解决了我查找东西的问题,但它是一个应用程序,而不是文件系统。
发布于 2010-07-16 16:31:42
您要求的是一个Database File System。我知道一个Linux的实验性实现,叫做DBFS。微软开始开发Windows Future Storage (WinFS) -它原计划与Vista一起发布,但由于技术问题,该项目被推迟了,据我所知,最终取消了。NTFS还能够存储文件的元数据,但不能扩展到功能齐全的数据库文件系统。
对于操作系统的核心来说,将这样的文件系统集成到操作系统中不应该那么复杂-它可以简单地坚持分层模型。复杂的部分是(图形) shell,它必须向用户公开文件系统的结构和功能。
发布于 2010-07-16 17:31:17
下面是我在google上找到的一些文件系统。
TagFS - "Tag Semantics for Hierarchical File Systems“论文,斯蒂芬·布洛道恩和Max Völkel,2006年http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.60.4187
dhtfs -“基于标记的文件系统,提供基于与文件相关联的标记的动态目录层次结构”一个可用的实现,最新发布版本2007 http://code.google.com/p/dhtfs/
Tagsistant -在主动开发http://www.tagsistant.net/下的“用于Linux和BSD的推理语义文件系统”项目
Leaftag -“为Linux桌面添加标签”另一种实现,最新版本2006 http://www.chipx86.com/w/index.php/Leaftag
关于与OSes的集成,我认为它不应该那么困难。OSes在很大程度上依赖于文件系统的层次结构,但是基于标签的文件系统可以模仿目录结构。例如,在基于标签的文件系统中,路径/etc/init.d将给出所有带有两个标签的文件,即'etc‘和'init.d’。对于使用其他标记和这两个标记标记的文件,它们的额外标记可以显示为/etc/init.d中的目录。如果有一个带有三个标签的文件a.txt,即'etc‘、'init.d’和'asdf‘,那么'asdf’将作为目录出现在/etc/init.d中,a.txt的完整路径将变为/etc/init.d/asdf/a.txt。
发布于 2013-10-18 00:17:14
我是Linux程序TMSU的作者,该程序允许您标记文件并在基于标记的文件系统中查看它们。
下面是一些用法示例:
$ tmsu tag track.mp3 music genre=indie-rock good year=1999
$ tmsu tag melody.mp3 music
$ tmsu tag DC123.jpg photo landscape country=italy year=2014
$ tmsu files music year = 1999
./song.mp3和虚拟文件系统:
$ mkdir mp
$ tmsu mount mp
$ ls mp
query tags
$ ls tags
country genre good landscape photo music year
$ ls tags/music
genre good track.1.mp3 melody.2.mp3 year文件名中的数字是标识符,用于保持文件名的唯一性。这些是指向文件原始位置的符号链接。
$ ls tags/music/good # you can drill down
genre track.1.mp3 year
$ ls "query/music and good" # this directory gets automatically created
track.1.mp3它仍在积极开发中。在撰写本文时(2014年10月),0.4.2已经可用,但我很快就会发布0.5.0。
https://stackoverflow.com/questions/3263036
复制相似问题