找回密码
 立即注册
搜索
查看: 3727|回复: 35

[软件] 有没有基于标签的文件系统

[复制链接]
     
发表于 2022-7-1 10:21 | 显示全部楼层 |阅读模式
主流操作系统都是树形文件系统,一本名为《C++开发的设计模式》的书,要么放到C++文件夹,要么放到设计模式文件夹,要么两个文件夹各自放一个拷贝,不管哪种做法都不合理。如果C++和设计模式都是可以复选的标签(Flag),文件只要选择性勾选,就可以在两个标签下都找到这本书了。
倒是在网络上很常用,豆瓣的电影标签,steam的游戏分类,都很方便。

Windows那个库感觉有点这个意思,但库这个概念又太大了,还是不适合日常碎片化的文件归类,光用来做书的归类就会多出几十个库来。


回复

使用道具 举报

     
发表于 2022-7-1 10:28 来自手机 | 显示全部楼层
WinFS
longhorn当年画的饼之一,废掉之后才出的library这个凑合事的

— from Xiaomi M2012K11AC, Android 12 of S1 Next Goose v2.5.4
回复

使用道具 举报

     
发表于 2022-7-1 10:36 来自手机 | 显示全部楼层
硬链接?

—— 来自 realme RMX3366, Android 12上的 S1Next-鹅版 v2.5.4
回复

使用道具 举报

发表于 2022-7-1 10:38 | 显示全部楼层
硬链接请,软链接快捷方式也不是不可以
回复

使用道具 举报

     
 楼主| 发表于 2022-7-1 10:41 | 显示全部楼层
dongjuanyong 发表于 2022-7-1 10:28
WinFS
longhorn当年画的饼之一,废掉之后才出的library这个凑合事的

看了介绍,这东西的目标远超出我提的这个功能了,不太能想象出来成品是什么样子
回复

使用道具 举报

     
发表于 2022-7-1 10:48 | 显示全部楼层
多建几个快捷方式不就完了。。。
回复

使用道具 举报

     
 楼主| 发表于 2022-7-1 10:54 | 显示全部楼层
kara2000 发表于 2022-7-1 10:48
多建几个快捷方式不就完了。。。

快捷方式肯定不行的,实例不对等,源文件删了其他就都没了。
回复

使用道具 举报

     
 楼主| 发表于 2022-7-1 10:59 | 显示全部楼层
硬链接是比较接近的,不过不知道能不能实现目录的标签化,比如C++这个目录,同时属于另两个上级目录Programming和“重点书籍”

剩下就是交互的优化了,对文件赋予标签属性,跟在某标签下创建该文件链接还是有很大区别的

另外在标签化的前提下,删除文件夹不应该导致文件本身被删除,而是从文件的属性中去除掉对应标签(参考Steam和豆瓣标签)
回复

使用道具 举报

     
发表于 2022-7-1 11:13 | 显示全部楼层
我也尝试过一些支持标签的文件管理器,比如xyplorer,但总是不方便
现在是采用在文件名上做标签,然后用everything搜索,比如 C++开发的设计模式-t设计模式-计算机-社科.pdf。文件夹只按照归档日期分类。
回复

使用道具 举报

发表于 2022-7-1 11:18 | 显示全部楼层
Linux下有个tagspaces,不过不是开源的
其实用硬链接思路自己写一个这样的文件管理器也不是难事
回复

使用道具 举报

     
发表于 2022-7-1 11:30 | 显示全部楼层
本帖最后由 病態極端 于 2022-7-1 11:35 编辑



https://wiki.archlinux.org/title/Baloo
https://community.kde.org/Baloo
回复

使用道具 举报

     
发表于 2022-7-1 11:34 | 显示全部楼层
Archaeopteryx 发表于 2022-7-1 10:59
硬链接是比较接近的,不过不知道能不能实现目录的标签化,比如C++这个目录,同时属于另两个上级目录Program ...

这玩意不叫“基于标签的文件系统”
因为你“基于标签”这个想法就是单纯的应用软件思路

文件系统不会关心你的文件标签是啥,这和文件系统本身毫无关系,
文件系统实现类似的功能,叫做“去重”
比如zfs的 去重功能叫做 dedup
开启dedup以后, 同一个文件,你复制到不同目录复制无数份相同文件,在硬盘上也只存在一份实际数据
删除时候会维护引用关系

这样应用层使用的时候 只要按照自己的标签库,把文件分类复制一份放好就行了
也不用担心存储会指数增长,dedup会处理好数据重复
回复

使用道具 举报

     
发表于 2022-7-1 11:40 | 显示全部楼层
dongjuanyong 发表于 2022-7-1 10:28
WinFS
longhorn当年画的饼之一,废掉之后才出的library这个凑合事的

这个才是点子上的东西,用数据库的逻辑来管理文件系统,不需要文件夹,直接按照文件标签与属性。winfs最终还是烂尾了,win7用了库来弱化这个概念,win11就放弃了库。macos文件和win还是没得比,但是还留着颜色做tag,但是也非常鸡肋。建议将所有属性写入文件名,然后使用everything之类的关键词搜索。

但是个人维护一个数据库是非常困难,也就是说要给这么多的文件打上标签几乎不可能。但是在部分领域是做到了的,比如几乎所有的音乐软件,就可以按照歌手、流派等属性进行索引,但是这些标签都不是用于自己给的。还有部分人使用的文献管理数据库,如endnote这种,但是文献的citation也不是自己给的。

Vista真是死得太惨了

回复

使用道具 举报

头像被屏蔽
     
发表于 2022-7-1 11:45 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

     
发表于 2022-7-1 12:30 来自手机 | 显示全部楼层
处男鉴黄师 发表于 2022-7-1 11:45
我寻思你可能需要把文件全塞进sql里

其实对电子书的大小来说直接塞数据库里是个不错的选择,查个字段速度可快多了,各种条件随便搞。
如果只是本地使用更不需要考虑开销之类的问题,就算有远程需求无论是迁移还是调用都很方便
就是安全性堪忧,个人灾备能力有限,因为硬盘问题破损了神仙难救

—— 来自 realme RMX3366, Android 12上的 S1Next-鹅版 v2.5.2-play
回复

使用道具 举报

     
发表于 2022-7-1 13:13 | 显示全部楼层
Archaeopteryx 发表于 2022-7-1 10:54
快捷方式肯定不行的,实例不对等,源文件删了其他就都没了。

??
重要文件就远程访问只读,只能操作本机对源文件进行操作,这不是最基本的么。
回复

使用道具 举报

     
发表于 2022-7-1 13:15 | 显示全部楼层
med 发表于 2022-7-1 11:40
这个才是点子上的东西,用数据库的逻辑来管理文件系统,不需要文件夹,直接按照文件标签与属性。 ...

就算音乐文件,也存在很大的兼容性问题,经常有带cue目录的导入到foobar全是乱码,更有目录只录入了第一个音轨,其他全是什么未知艺术家巴拉巴拉的,说穿了这玩意儿也是要消费人工的,没那么多人有热情去无偿维护一个庞大的系统性分类。
回复

使用道具 举报

     
 楼主| 发表于 2022-7-1 13:21 | 显示全部楼层
kara2000 发表于 2022-7-1 13:13
??
重要文件就远程访问只读,只能操作本机对源文件进行操作,这不是最基本的么。 ...

你没理解我的意思。按这种方式,源文件删了,快捷方式又不会消失,你可能要等到很久以后才发现某个链接已经失效了,不觉得鸡肋吗?
回复

使用道具 举报

     
发表于 2022-7-1 13:41 来自手机 | 显示全部楼层
你需要的是一个能打标签的文档管理器 而不是文件系统

—— 来自 HUAWEI JAD-AL50, Android 10上的 S1Next-鹅版 v2.5.4
回复

使用道具 举报

     
发表于 2022-7-1 14:38 | 显示全部楼层
回复

使用道具 举报

     
发表于 2022-7-1 15:27 来自手机 | 显示全部楼层
说起音乐软件我就想吐槽,大部分音乐软件的媒体库正是标签系统的典型反例,它们按任何给出的标签列出的内容往往都只是一个无序的清单,而即使有某一个音乐软件媒体库功能足够强大支撑河合理的分类逻辑,那也不具有兼容性,不能转移到其他类型的设备上,最后还是只有整理好的文件夹是属于你的
回复

使用道具 举报

     
发表于 2022-7-1 15:27 | 显示全部楼层
LZ没有用过苹果的mac么?他的文件系统就可以随便加标签
回复

使用道具 举报

发表于 2022-7-1 15:54 来自手机 | 显示全部楼层
倒是win上有给文件打标签的软件
回复

使用道具 举报

     
发表于 2022-7-1 16:19 来自手机 | 显示全部楼层
你还不如给文件用tag命名,然后everthing搜索目录和tag。要么就把文件丢到笔记软件里,利用笔记软件的目录和tag系统
回复

使用道具 举报

     
 楼主| 发表于 2022-7-1 16:22 | 显示全部楼层
win8 发表于 2022-7-1 16:19
你还不如给文件用tag命名,然后everthing搜索目录和tag。要么就把文件丢到笔记软件里,利用笔记软件的目录 ...

大量文件都是PT做种中,改了名字就不能做种了。
回复

使用道具 举报

     
 楼主| 发表于 2022-7-1 16:24 | 显示全部楼层
荆凛音 发表于 2022-7-1 14:38
https://bbs.saraba1st.com/2b/thread-2037016-1-1.html

推销一下

TagSpaces我感觉是可以的,不过毕竟是第三方软件,用来做日常文件管理一来开销大,二来可靠性也打折扣(配置文件丢失、开发商跑路等),而且pro版有点贵
回复

使用道具 举报

     
发表于 2022-7-1 16:25 来自手机 | 显示全部楼层
dvd6 发表于 2022-7-1 15:27
说起音乐软件我就想吐槽,大部分音乐软件的媒体库正是标签系统的典型反例,它们按任何给出的标签列出的内容 ...

cd本身的正确tag和用户自定义tag构成了检索依据,软件提供检索功能和依照tag展示/排序的功能。反倒是不理解你…
回复

使用道具 举报

     
发表于 2022-7-1 16:28 来自手机 | 显示全部楼层
Archaeopteryx 发表于 2022-7-1 16:22
大量文件都是PT做种中,改了名字就不能做种了。

感觉到了bt的拉胯,竟然没有设计按照文件hash来提供上传的功能
回复

使用道具 举报

头像被屏蔽
     
发表于 2022-7-1 16:29 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

     
发表于 2022-7-1 16:42 | 显示全部楼层
Archaeopteryx 发表于 2022-7-1 16:24
TagSpaces我感觉是可以的,不过毕竟是第三方软件,用来做日常文件管理一来开销大,二来可靠性也打折扣( ...

配置文件我觉得算是他的优点....json的解析和迁移都很容易
性能开销是个问题,不显示标签的时候其实还会,显示标签时,文件一多吃单核性能(5800x都有问题)
web版本的倒是没这个问题,但默认客户端不能做编辑
白嫖使用的话..其实旧的pro版本+新的社区版其实就ok了
晚点我也会翻个旧版pro分享出来
回复

使用道具 举报

     
发表于 2022-7-2 09:56 | 显示全部楼层
win8 发表于 2022-7-1 16:28
感觉到了bt的拉胯,竟然没有设计按照文件hash来提供上传的功能

这就是eMule的优点
回复

使用道具 举报

头像被屏蔽
发表于 2022-7-2 13:51 来自手机 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

头像被屏蔽
发表于 2022-7-3 14:33 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

     
发表于 2022-7-4 12:28 来自手机 | 显示全部楼层
本帖最后由 superlattice 于 2022-7-4 12:33 编辑

传统方案硬链接呗,多个路径指向一个文件,不过跨存储是个问题。

用户自己手工分类的话,写个打tag转创建硬链接的脚本就行了。比如某个文件夹拖到脚本上就会创建硬链接到某个文件夹。

lz想的是那种给文件系统的元数据加用户自定义条目那种?那搭个对象存储吧。
对象存储将获取的每个数据片段指定为对象。数据保存在单独的存储库中,而不是以文件的形式保存在文件夹中,数据与关联的元数据和唯一标识符捆绑在一起,以形成存储池。

文件存储将数据作为一条信息存储在文件夹中,以便于区分其他数据进行组织。这也称为分层存储,模仿了纸质文件的存储方式。当您需要访问数据时,您的计算机系统需要知道数据的路径。

块存储将文件拆分为单个数据块,然后将这些块作为单独的数据片段来存储。每条数据都有不同的地址,因此无需将它们存储在文件结构中。
回复

使用道具 举报

     
发表于 2022-7-4 12:37 | 显示全部楼层
一个本地版色熊猫?
回复

使用道具 举报

     
发表于 2022-7-4 12:57 来自手机 | 显示全部楼层
本帖最后由 zx2kks 于 2022-7-4 13:02 编辑

我自己是用前面有人提到过的bilifish,确实还不够成熟,但给少量多样的文件打tag也够用了,为了降低维护成本我的策略是精品化,只有特别出色预计会反复观看的作品我才会丢进去打标签,基于同样的思路,标签数量也不追求各种图站绅士站那样事无巨细,只需把自己最在意的tag打上
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|上海互联网违法和不良信息举报中心|网上有害信息举报专区|962110 反电信诈骗|举报电话 021-62035905|Stage1st ( 沪ICP备13020230号-1|沪公网安备 31010702007642号 )

GMT+8, 2024-11-15 04:15 , Processed in 0.174280 second(s), 5 queries , Gzip On, Redis On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表