Давно пытаюсь найти рабочий вариант для добавления тэгов к файлам в Linux.
Естественно, попробовал вариант, который сейчас продвигается на уровне Ubuntu. Это Tracker. Но у него есть существенные, с моей точки зрения, минусы: 1. тэги хранятся в отдельной базе — не очень удобно их копировать на другие машины; 2. сама программа пока плохо интегрирована в систему (например, файловые менеджеры); 3. Tracker имеет тенденцию «выходить из под контроля» — начинает работать, когда ему запрещен поиск или сильно тормозит систему.
Поэтому решил попробовать использовать символ # в имени файла перед тэгом.
Пример: my-file#tag.html
Вопрос: может ли это иметь какие-то последствия, кроме случая, когда перед символом # стоит пробел (и все за ним считается комментарием)? Может быть есть какие-то еще надежные варианты организации тэгов в *nix?
Судя по всему, эта задача успешно решена в Mac OS: раньше можно было добавлять тэги с помощью комментариев в Spotlight и в сторонних приложениях, а в новой версии они уже будут встроенными на системном уровне.
Не совсем понятно, для какой именно цели вы хотите использовать эти «теги». Если нужен поиск по ним, то вполне логично, что они хранятся отдельно, в индексированной базе данных — только так можно осуществлять эффективный поиск. Если же вам нужно ассоциировать некую метаинформацию с файлом, то многие файловые системы поддерживают расширенные атрибуты типа имя=значение. Прочтите man attr.
Спасибо за направление поиска! Не знаком с attr. Нужна именно возможность хранить метаинформацию и делать сортировку по ней. Буду читать про en.wikipedia.org/wiki/Extended_file_attributes.