Файловая система, использующая теги, а не папки?
Мои файлы беспорядок, я пытаюсь структурировать их в папки с именами, которые описывают то, что они находятся в смысле рекурсивного класса, но позже мне не удается найти файл снова, когда я его ищу (тот файл может существовать во многих папках).
Какая файловая система позволит мне найти мои файлы с помощью комбинации тегов вместо использования папок?
Если бы была такая файловая система, я не уверен, как бы справиться с ОС, так сильно завися от системы папок. Я столкнулся с tag2find, что не так уж плохо; он решает мою проблему с поиском материала на данный момент, но это приложение, а не файловая система.
Ответы
Ответ 1
То, что вы запрашиваете, это Файловая система базы данных. Я знаю об одной экспериментальной реализации для Linux под названием DBFS. Microsoft приступила к разработке Windows Future Storage (WinFS) - планировалось отправить ее с Vista, но из-за технических проблем проект был отложен, и насколько я знайте, наконец, отменено. NTFS также может хранить метаданные для файлов, но не для расширения полнофункциональной файловой системы базы данных.
Интеграция такой файловой системы в операционную систему не должна быть такой сложной для ядра операционной системы - она может просто придерживаться иерархической модели. Сложная часть - это (графическая) оболочка, которая должна раскрывать структуру и возможности файловой системы пользователю.
Ответ 2
Вот некоторые файловые системы, которые я нашел с помощью Google.
TagFS - "Семантика тегов для иерархических файловых систем"
бумага Стефана Блейдорна и Макс Фелькель, 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
предоставит все файлы с тегами с двумя тегами i.e 'etc' и 'init.d'. Для файлов, помеченных другими тегами, а также этими двумя тегами, их дополнительные теги могут отображаться в виде каталогов внутри /etc/init.d. Если есть файл a.txt с тремя тегами, то есть "etc", "init.d" и "asdf", тогда "asdf" появится как каталог внутри /etc/init.d, и полный путь к a.txt станет/и т.д./init.d/ASDF/a.txt.
Ответ 3
Я являюсь автором программы 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 года) доступно 0.4.2, но я скоро выпущу 0.5.0.
Ответ 4
Vista и Windows 7 поддерживают тегирование файлов. См. статью
Ответ 5
Попробуйте tagfs. Это файловая система пользовательского пространства на основе плавких предохранителей. Он может отображать помеченные каталоги из исходного каталога в виде фильтра тегов.
например. скажем, у вас есть каталог "отпуск india", который помечен как "india" и "photos", а также каталог "испания испания" с тегами "испания" и "фотографии". Вы можете отфильтровать все свои фотографии, указав путь "/my_mountpoint/photos".
Каталоги помечены через простой текстовый файл. Файл с именем .tag в каталоге содержит теги. Несколько тегов разделяются символами новой строки.
Ответ 6
Я столкнулся с этим вопросом, задавая себе тот же вопрос о тегах файловой системы. Затем я наткнулся на это приложение для Windows XP/Vista под названием TaggedFrog, которое может сделать трюк. Еще не пробовал, но выглядит многообещающе.
Не смотря на то, чтобы пройти через 1000 файлов! Во всяком случае, я буду вынужден перейти на Win7 в какой-то момент и могу попробовать свои собственные теги.
Ответ 7
Не пробовав их или не увидев их в дикой природе, есть, например,
Ответ 8
TagsForAll для окон. Это файловый менеджер, основанный на тегах. Теги могут иметь иерархическую структуру. Пользовательский интерфейс очень прост, но приятный. Бесплатная версия полностью работоспособна и сохраняет теги в базе данных, теги сохранения версии Pro также в потоке NTFS в файл.
Ответ 9
Я нашел дизайн пользовательского интерфейса Elyse замечательный.
Но это скорее статическая система, которая не может автоматически просматривать папку и тегировать новый файл с тегом по умолчанию.
Ответ 10
Я не думаю, что имел (имеет) поддержку тегов, но BFS поддерживает некоторые довольно классные функции метаданных.
Ответ 11
Я уже давно думаю о файловой системе на основе тегов.
Кто-нибудь думал о более радикальном и простом подходе?
Чтобы полностью забыть папки (имитированные папки только по причинам совместимости для программ) и поместить все теги непосредственно в имя файла.
(классическое имя файла) _Tag1_Tag2_Tag3 _..... (расширение файла)
Mydocument_tag на основе файлов system_tags_file-system_stackoverflow_folder_file-name_tagfs.txt
Мне всегда нравится указывать в имени файла как можно больше информации. Вы можете найти все в миллионах файлов на каждой возможной ОС.
Единственным ограничением является длина имени файла в evey OS, и он становится беспорядочным с текущими системами.
Расширенная ОС с доступом к файлу выглядит так: Mydocument.txt
И теги могут быть отредактированы на самом низком уровне ОС, например, сменить имя файла сегодня.
Если вдруг появился другой файл Mydocument.txt, он автоматически переименован в Mydocument (2).txt и т.д.
Я знаю, что эта идея не без дополнительных проблем, даже не упомянутых здесь.....
Но идея собирается хранить теги в самой простой низкоуровневой возможности, к которой можно получить доступ из ВСЕХ прошлых и будущих файловых систем.
И что у всех FS есть общее имя файла.