基于 标签(tag) 和 版本(version) 的个人文件系统(filesystem)

46 views
Skip to first unread message

kindy

unread,
Jun 28, 2009, 4:28:37 PM6/28/09
to pyth...@googlegroups.com

最近在找是否有文件系统是基于 标签 和 版本 来管理文件的,
就是说我可以随便的丢一个文件进系统中,可以任意、无限的标签它。
也可以随便的修改,每一次修改都会被记录,我不用另存,不用复制,只需要删除我不需要的中间版本即可。
至于文件的获取,可以通过搜索+浏览来实现,其实 搜索 在 Mac 中已经很流行,
只是他的文件系统好像还不是很能够随意的让我去丢文件进去,因为大多数时候还是需要我自己去目录下面翻文件,
不知道 spotlight 是搜索文件的哪些 metadata 的。所以嘛,不了解细节对我这样的人来说,用起来很痛苦。

系统构想:

  • 添加文件比较简单,可以随意的丢文件进去,然后标签(也可以完全不打标签)
  • 可以丢文件包进去,就是说我的一组文件是作为一个文件来处理的,对以检索来说
  • 查询时候,根据 标签(自动补齐),类别,日期(c/a/m),使用频率 之类来检索(受 find 影响)
  • UI 界面下的检索结果列表,可以将新文件拖到这个结果界面中,那么这个新文件将自动被赋予这些标签(CLI 下如何操作?)

这种东西可能跟 linux 下的 find、grep 重复,不过,在现有的文件系统下存储,
仍然需要建立复杂的目录和 ln -s 连接才可以模拟这样的效果,
如果有软件可以更加方便的使用 ln 来模拟就更好了。 就是说我可以用 ls x 来开始搜索,然后 tab 补齐(可以考虑列出来,直接、直观的选择),比如 abc,
加斜杠的意义就是在所有标有 abc 标签之下再检索,再自动补齐,然后觉得满意了直接回车,然后出来所有满足条件的文件。
添加 文件类型、文件、版本、使用频率 之类的检索条件,比较完美了。
对于文件保存,几乎不覆盖,而是类似增量保存,然后可以选择抛弃某个版本。

适用:

  • 收藏资料、图片、软件之类大而碎的文件 的用户
  • 应该也可以作为服务器的存储底层来使用

有啥想法呢??
或者有啥推荐呢?
有任何兴趣或者建议,请直接留言或者 mail 给我(kindy61 在 G邮箱)。



--
Regards,

Lin Qing

Samuel Ji

unread,
Jun 28, 2009, 5:21:29 PM6/28/09
to pyth...@googlegroups.com


2009/6/29 kindy <kin...@gmail.com>

好想法,我在刚接触gmail的时候也想过,不过没仔细深究.
 

Jiahua Huang

unread,
Jun 28, 2009, 5:56:52 PM6/28/09
to pyth...@googlegroups.com
不需要蛮力 ln 之类,
Ubuntu 下类似实现多用 fuse / python-fuse 用户文件系统来做的。

2009/6/29 kindy <kin...@gmail.com>:

kindy

unread,
Jun 28, 2009, 5:58:53 PM6/28/09
to python-cn`CPyUG`华蟒用户组(中文Py用户组)
有实际的应用么?????

很想看看呢。


On Jun 29, 1:56 am, Jiahua Huang <jhuangjia...@gmail.com> wrote:
> 不需要蛮力 ln 之类,
> Ubuntu 下类似实现多用 fuse / python-fuse 用户文件系统来做的。
>

> 2009/6/29 kindy <kind...@gmail.com>:

Jay True

unread,
Jun 28, 2009, 6:10:19 PM6/28/09
to pyth...@googlegroups.com
我也有想过以标签的方式来管理文件,一个标签就对应于现在的一级目录,应该跟楼主所想的差不多吧。

--
歌词唱清楚,不是周杰伦
Home Page: http://glacjay.is-a-geek.org/blog/

est

unread,
Jun 28, 2009, 9:58:57 PM6/28/09
to python-cn`CPyUG`华蟒用户组(中文Py用户组)
WinFS可以部分实现LZ所说的功能。tag貌似现在Vista上的explorer就实现了。versioning可以通过shadow
volume copy实现

个人不赞成这种FS,而支持这类文件格式。

On Jun 29, 12:28 am, kindy <kind...@gmail.com> wrote:
> 最近在找是否有文件系统是基于 标签 和 版本 来管理文件的,
> 就是说我可以随便的丢一个文件进系统中,可以任意、无限的标签它。
> 也可以随便的修改,每一次修改都会被记录,我不用另存,不用复制,只需要删除我不需要的中间版本即可。
> 至于文件的获取,可以通过搜索+浏览来实现,其实 搜索 在 Mac 中已经很流行,
> 只是他的文件系统好像还不是很能够随意的让我去丢文件进去,因为大多数时候还是需要我自己去目录下面翻文件,
> 不知道 spotlight 是搜索文件的哪些 metadata 的。所以嘛,不了解细节对我这样的人来说,用起来很痛苦。
> 系统构想:
>

> - 添加文件比较简单,可以随意的丢文件进去,然后标签(也可以完全不打标签)
> - 可以丢文件包进去,就是说我的一组文件是作为一个文件来处理的,对以检索来说
> - 查询时候,根据 标签(自动补齐),类别,日期(c/a/m),使用频率 之类来检索(受 find 影响)
> - UI 界面下的检索结果列表,可以将新文件拖到这个结果界面中,那么这个新文件将自动被赋予这些标签(CLI 下如何操作?)


>
> 这种东西可能跟 linux 下的 find、grep 重复,不过,在现有的文件系统下存储,
> 仍然需要建立复杂的目录和 ln -s 连接才可以模拟这样的效果,
> 如果有软件可以更加方便的使用 ln 来模拟就更好了。 就是说我可以用 ls x 来开始搜索,然后 tab 补齐(可以考虑列出来,直接、直观的选择),比如
> abc,
> 加斜杠的意义就是在所有标有 abc 标签之下再检索,再自动补齐,然后觉得满意了直接回车,然后出来所有满足条件的文件。
> 添加 文件类型、文件、版本、使用频率 之类的检索条件,比较完美了。
> 对于文件保存,几乎不覆盖,而是类似增量保存,然后可以选择抛弃某个版本。
> 适用:
>

> - 收藏资料、图片、软件之类大而碎的文件 的用户
> - 应该也可以作为服务器的存储底层来使用

DIrk

unread,
Jun 29, 2009, 12:26:58 AM6/29/09
to python-cn`CPyUG`华蟒用户组(中文Py用户组)
Leopard 下的Find结合Time machine可以实现你的大部分需求。

On 6月29日, 上午12时28分, kindy <kind...@gmail.com> wrote:
> 最近在找是否有文件系统是基于 标签 和 版本 来管理文件的,
> 就是说我可以随便的丢一个文件进系统中,可以任意、无限的标签它。
> 也可以随便的修改,每一次修改都会被记录,我不用另存,不用复制,只需要删除我不需要的中间版本即可。
> 至于文件的获取,可以通过搜索+浏览来实现,其实 搜索 在 Mac 中已经很流行,
> 只是他的文件系统好像还不是很能够随意的让我去丢文件进去,因为大多数时候还是需要我自己去目录下面翻文件,
> 不知道 spotlight 是搜索文件的哪些 metadata 的。所以嘛,不了解细节对我这样的人来说,用起来很痛苦。
> 系统构想:
>

> - 添加文件比较简单,可以随意的丢文件进去,然后标签(也可以完全不打标签)
> - 可以丢文件包进去,就是说我的一组文件是作为一个文件来处理的,对以检索来说

> - 查询时候,根据 标签(自动补齐),类别,日期(c/a/m),使用频率 之类来检索(受 find 影响)
> - UI 界面下的检索结果列表,可以将新文件拖到这个结果界面中,那么这个新文件将自动被赋予这些标签(CLI 下如何操作?)


>
> 这种东西可能跟 linux 下的 find、grep 重复,不过,在现有的文件系统下存储,
> 仍然需要建立复杂的目录和 ln -s 连接才可以模拟这样的效果,
> 如果有软件可以更加方便的使用 ln 来模拟就更好了。 就是说我可以用 ls x 来开始搜索,然后 tab 补齐(可以考虑列出来,直接、直观的选择),比如
> abc,
> 加斜杠的意义就是在所有标有 abc 标签之下再检索,再自动补齐,然后觉得满意了直接回车,然后出来所有满足条件的文件。
> 添加 文件类型、文件、版本、使用频率 之类的检索条件,比较完美了。
> 对于文件保存,几乎不覆盖,而是类似增量保存,然后可以选择抛弃某个版本。
> 适用:
>

> - 收藏资料、图片、软件之类大而碎的文件 的用户

> - 应该也可以作为服务器的存储底层来使用

徐牛

unread,
Jun 29, 2009, 1:50:59 AM6/29/09
to pyth...@googlegroups.com
感觉,lz说的不能算是一个文件系统,顶多就是一个文件浏览器。这个大概是一个趋势,估计以后gnome和kde都会实现(还会更好)

如果让我实现的化我觉得最简单做个文件每行保存文件的信息,这样实现无限标签是很简单的,
第二点,可以相debian那样所有东西放到一个pool里面。丢进去的时候进行一些加工(简单点用文件名加时间,复杂点用md5吧)
三查询包装一个grep就行了。

感觉用不了多久一般的文件管理器都会实现这个功能。我想要是我还是等等吧。

为了那些爱你的人和你爱的人,
无论你多努力都不为过。

kindy

unread,
Jun 29, 2009, 3:19:04 AM6/29/09
to python-cn`CPyUG`华蟒用户组(中文Py用户组)
呵呵,
果然 http://www.iola.dk/nemo/

nemo 确实是这样的东西。
不过,跟我的想象有点儿差别。

On Jun 29, 9:50 am, 徐牛 <cbkidlll...@gmail.com> wrote:
> 感觉,lz说的不能算是一个文件系统,顶多就是一个文件浏览器。这个大概是一个趋势,估计以后gnome和kde都会实现(还会更好)
>
> 如果让我实现的化我觉得最简单做个文件每行保存文件的信息,这样实现无限标签是很简单的,
> 第二点,可以相debian那样所有东西放到一个pool里面。丢进去的时候进行一些加工(简单点用文件名加时间,复杂点用md5吧)
> 三查询包装一个grep就行了。
>
> 感觉用不了多久一般的文件管理器都会实现这个功能。我想要是我还是等等吧。
>
> 为了那些爱你的人和你爱的人,
> 无论你多努力都不为过。
>

> 2009/6/29 DIrk <dirk...@gmail.com>

朗儿

unread,
Jun 29, 2009, 4:40:13 AM6/29/09
to python-cn`CPyUG`华蟒用户组(中文Py用户组)
mac上有个文件管理器是用tag管理的。mac上的文件属性里有备注,可以当成tag,用spotlight搜索。

timemachine可以当成你说的"版本"来用。


On 6月29日, 上午12时28分, kindy <kind...@gmail.com> wrote:

> 最近在找是否有文件系统是基于 标签 和 版本 来管理文件的,
> 就是说我可以随便的丢一个文件进系统中,可以任意、无限的标签它。
> 也可以随便的修改,每一次修改都会被记录,我不用另存,不用复制,只需要删除我不需要的中间版本即可。
> 至于文件的获取,可以通过搜索+浏览来实现,其实 搜索 在 Mac 中已经很流行,
> 只是他的文件系统好像还不是很能够随意的让我去丢文件进去,因为大多数时候还是需要我自己去目录下面翻文件,
> 不知道 spotlight 是搜索文件的哪些 metadata 的。所以嘛,不了解细节对我这样的人来说,用起来很痛苦。
> 系统构想:
>

> - 添加文件比较简单,可以随意的丢文件进去,然后标签(也可以完全不打标签)
> - 可以丢文件包进去,就是说我的一组文件是作为一个文件来处理的,对以检索来说

> - 查询时候,根据 标签(自动补齐),类别,日期(c/a/m),使用频率 之类来检索(受 find 影响)
> - UI 界面下的检索结果列表,可以将新文件拖到这个结果界面中,那么这个新文件将自动被赋予这些标签(CLI 下如何操作?)


>
> 这种东西可能跟 linux 下的 find、grep 重复,不过,在现有的文件系统下存储,
> 仍然需要建立复杂的目录和 ln -s 连接才可以模拟这样的效果,
> 如果有软件可以更加方便的使用 ln 来模拟就更好了。 就是说我可以用 ls x 来开始搜索,然后 tab 补齐(可以考虑列出来,直接、直观的选择),比如
> abc,
> 加斜杠的意义就是在所有标有 abc 标签之下再检索,再自动补齐,然后觉得满意了直接回车,然后出来所有满足条件的文件。
> 添加 文件类型、文件、版本、使用频率 之类的检索条件,比较完美了。
> 对于文件保存,几乎不覆盖,而是类似增量保存,然后可以选择抛弃某个版本。
> 适用:
>

> - 收藏资料、图片、软件之类大而碎的文件 的用户

> - 应该也可以作为服务器的存储底层来使用

pem

unread,
Jun 29, 2009, 8:36:41 AM6/29/09
to python-cn`CPyUG`华蟒用户组(中文Py用户组)
这个可能和你说的有点像:
www.semanticdesktop.org/
http://nepomuk.kde.org/
不过我在kde4.2.4体验过了不好用

jyf1987

unread,
Jun 29, 2009, 8:37:32 AM6/29/09
to python-cn`CPyUG`华蟒用户组(中文Py用户组)
我一直想用这种方式来管理我的音乐

因为同一个音乐文件 其实可以按 音乐风格,作者,旋律基调 等等来划分到不同组的

同理 文本文件也可以这么考虑

就算是程序 也可以 按 编写语言,作用用途,等来区分 显然我们需要标签分类

pem

unread,
Jun 29, 2009, 8:51:23 AM6/29/09
to python-cn`CPyUG`华蟒用户组(中文Py用户组)
效果类似如此:
http://pem.freeshell.org/album/semanticdesktop.jpeg
http://pem.freeshell.org/album/semanticdesktop2.jpeg
任意目录和文件都可以打任意多tag倒是
只是目前还很不稳定,动不动耗尽cpu。

On 6月29日, 下午4时36分, pem <pemr...@gmail.com> wrote:
> 这个可能和你说的有点像:www.semanticdesktop.org/http://nepomuk.kde.org/
> 不过我在kde4.2.4体验过了不好用

Message has been deleted

DIrk

unread,
Jun 30, 2009, 12:27:17 AM6/30/09
to python-cn`CPyUG`华蟒用户组(中文Py用户组)
还能通过打包方式实现楼主所说的多个文件当作单个对象。

说实话,leopard在这方面算是走在前面了(功能性和易用性的结合)。

其实,系统很多东西都提供了,只不过一般人从来不去挖掘而已。比如leopard提供的完善的儿童使用限制,可以做到平时什么时间段、周末什么时间段分
别限制,限制儿童只上允许的网站等等。比那个LvBa强非常多。


DIrk


On 6月29日, 下午4时36分, pem <pemr...@gmail.com> wrote:

> 这个可能和你说的有点像:www.semanticdesktop.org/http://nepomuk.kde.org/

Jiahua Huang

unread,
Jun 30, 2009, 7:38:01 AM6/30/09
to pyth...@googlegroups.com
fuse 网站列出的 Filesystems based on FUSE
http://sourceforge.net/apps/mediawiki/fuse/index.php?title=FileSystems


Ubuntu 里现成的有 beaglefs

2009/6/29 kindy <kin...@gmail.com>:
> 有实际的应用么?????
>
> 很想看看呢。
>

kindy

unread,
Jun 30, 2009, 2:36:41 PM6/30/09
to python-cn`CPyUG`华蟒用户组(中文Py用户组)
嗯嗯,感觉可以借助 fuse 来实现 :)。

http://www.tagsistant.net/index.php


On 6月30日, 下午3时38分, Jiahua Huang <jhuangjia...@gmail.com> wrote:
> fuse 网站列出的 Filesystems based on FUSEhttp://sourceforge.net/apps/mediawiki/fuse/index.php?title=FileSystems
>
> Ubuntu 里现成的有 beaglefs
>
> 2009/6/29 kindy <kind...@gmail.com>:
>
>
>
> > 有实际的应用么?????
>
> > 很想看看呢。

tocer

unread,
Jun 30, 2009, 3:24:45 PM6/30/09
to python-cn
Excerpts from Jiahua Huang's message of 二 6月 30 15:38:01 +0800 2009:

还有几个例子,fuse 网站上没有登记,可以到 google code 去找,其中有一个项
目 dhtfs 已经有些模样了,就是一个打标签的文件系统,没有版本管理,你
可以去看看,但是在 python2.6 下无法运行,而且作者似乎也放弃了。

我这两天也在想这个问题,不过我想的没有楼主那么复杂,我只想要个打标签的文
件系统,dhtfs 就挺符合我的要求。有些全文检索的系统也可以打标签,但是太庞
大了,也很耗资源,不喜欢。

Pan Junyong

unread,
Jul 1, 2009, 10:31:13 AM7/1/09
to python-cn`CPyUG`华蟒用户组(中文Py用户组)
zopen-frs可以解决你的问题:

代码: http://code.google.com/p/zopen-frs/
老版说明: http://zopen.cn/products/frs

不过开放的代码只是一个API库。具体使用案例可看看我们的易度文档管理系统:

标签: http://everydo.com/docs/tour/#id5
版本: http://everydo.com/docs/tour/#id8

全部文档都存放在文件系统中的,因此可直接grep

文件系统

On 6月29日, 上午12时28分, kindy <kind...@gmail.com> wrote:

> 最近在找是否有文件系统是基于 标签 和 版本 来管理文件的,
> 就是说我可以随便的丢一个文件进系统中,可以任意、无限的标签它。
> 也可以随便的修改,每一次修改都会被记录,我不用另存,不用复制,只需要删除我不需要的中间版本即可。
> 至于文件的获取,可以通过搜索+浏览来实现,其实 搜索 在 Mac 中已经很流行,
> 只是他的文件系统好像还不是很能够随意的让我去丢文件进去,因为大多数时候还是需要我自己去目录下面翻文件,
> 不知道 spotlight 是搜索文件的哪些 metadata 的。所以嘛,不了解细节对我这样的人来说,用起来很痛苦。
> 系统构想:
>

> - 添加文件比较简单,可以随意的丢文件进去,然后标签(也可以完全不打标签)
> - 可以丢文件包进去,就是说我的一组文件是作为一个文件来处理的,对以检索来说

> - 查询时候,根据 标签(自动补齐),类别,日期(c/a/m),使用频率 之类来检索(受 find 影响)
> - UI 界面下的检索结果列表,可以将新文件拖到这个结果界面中,那么这个新文件将自动被赋予这些标签(CLI 下如何操作?)


>
> 这种东西可能跟 linux 下的 find、grep 重复,不过,在现有的文件系统下存储,
> 仍然需要建立复杂的目录和 ln -s 连接才可以模拟这样的效果,
> 如果有软件可以更加方便的使用 ln 来模拟就更好了。 就是说我可以用 ls x 来开始搜索,然后 tab 补齐(可以考虑列出来,直接、直观的选择),比如
> abc,
> 加斜杠的意义就是在所有标有 abc 标签之下再检索,再自动补齐,然后觉得满意了直接回车,然后出来所有满足条件的文件。
> 添加 文件类型、文件、版本、使用频率 之类的检索条件,比较完美了。
> 对于文件保存,几乎不覆盖,而是类似增量保存,然后可以选择抛弃某个版本。
> 适用:
>

> - 收藏资料、图片、软件之类大而碎的文件 的用户

> - 应该也可以作为服务器的存储底层来使用

isa rita

unread,
Jul 1, 2009, 12:01:46 PM7/1/09
to pyth...@googlegroups.com
我觉得今后的文件管理器都应该有标签功能才行。

2009/7/1 Pan Junyong <panju...@gmail.com>

FireBird

unread,
Jul 1, 2009, 1:03:53 PM7/1/09
to pyth...@googlegroups.com
我也想对文件加上标签。

2009/7/1 isa rita <isall...@gmail.com>:

Reply all
Reply to author
Forward
0 new messages