cli*_*nux 113 filesystems tags
我的文件很乱,我尝试将它们组织成文件夹,其名称描述了它们在递归类故障中的含义,但后来我在寻找它时再次找不到文件(一个文件可能存在于许多文件夹中).
什么文件系统允许我通过组合标签而不是使用文件夹来查找我的文件?
如果有这样的文件系统,我不确定操作系统如何应对,如此深深地依赖于文件夹系统.我遇到了tag2find,这并不算太糟糕; 它解决了我现在寻找东西的问题,但它是一个应用程序,而不是文件系统.
bin*_*inW 37
以下是我使用谷歌找到的一些文件系统.
TagFS - "分层文件系统的标记语义"论文,Stephan Bloehdorn和MaxVölkel,2006 http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.60.4187
dhtfs - "基于标记的文件系统,提供基于与文件关联的标签的动态目录层次结构"一个可用的实现,最新版本2007 http://code.google.com/p/dhtfs/
Tagsistant - 正在积极开发的"Linux和BSD的推理语义文件系统"项目 http://www.tagsistant.net/
Leaftag - "标记为Linux桌面"的另一个实现,最新版本2006 http://www.chipx86.com/w/index.php/Leaftag
在与操作系统集成时,我不认为应该那么困难.操作系统严重依赖于文件系统层次结构,但基于标签的文件系统可以模仿目录结构.例如,在基于标签的文件系统中,路径/etc/init.d将给出所有标记有两个标签的文件,即'etc'和'init.d'.对于使用其他标签以及这两个标签标记的文件,其额外标签可以显示为/etc/init.d中的目录.如果有一个带有三个标签的文件a.txt,即'etc','init.d'和'asdf',则'asdf'将显示为/etc/init.d中的目录,并且a.txt的完整路径将变为/等/ init.d /的ASDF/A.TXT.
Dan*_*ner 34
您要求的是数据库文件系统.我知道一个名为DBFS的 Linux实验性实现.微软开始开发Windows Future Storage(WinFS) - 它计划与Vista一起发布,但由于技术问题,该项目被推迟,据我所知最终取消.NTFS还能够存储文件的元数据,但不能存储到全功能数据库文件系统的扩展.
将这样的文件系统集成到操作系统中对于操作系统的核心来说不应该那么复杂 - 它可以简单地坚持分层模型.复杂的部分是(图形)shell,必须向用户公开文件系统的结构和功能.
Pau*_*ane 33
我是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
Run Code Online (Sandbox Code Playgroud)
和虚拟文件系统:
$ 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
Run Code Online (Sandbox Code Playgroud)
文件名中的数字是用于保持文件名唯一的标识符.这些是返回文件原始位置的符号链接.
$ 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
Run Code Online (Sandbox Code Playgroud)
它仍处于积极发展阶段.在撰写本文时(2014年10月),0.4.2可用,但我很快就会发布0.5.0.