No que diz respeito à marcação simples de arquivos, a questão fundamental é onde / como as tags são armazenadas? Se o sistema de arquivos não tiver suporte nativo para a marcação de tipos de arquivos heterogêneos, duas abordagens comuns (embora longe do ideal) são: incorporação de nome de arquivo e sidecars . O primeiro significa que suas tags são inseridas no nome do arquivo, por exemplo, foo.txt torna-se foo- [tag1, tag2] .txt . O último, sidecar, significa que as tags são armazenadas em um arquivo localizado no mesmo diretório ou em um subdiretório comum, como o arquivo a ser marcado. Por exemplo, foo.txt pode ser acompanhado por .foo.txt.tags .
Nenhum desses parece muito atraente, não é? Embutir me parece feio, mas pelo menos você não precisa se preocupar em como manter suas tags com um arquivo se você o mover ou deletar, como acontece com os sidecars.
Mas, aparentemente, essas compensações são aceitáveis para algumas pessoas e há alguns clientes satisfeitos de ofertas como ...
Eu ouvi algumas coisas positivas sobre uma solução de código aberto e plataforma cruzada chamada TagSpaces . Isso usa a abordagem incorporada por padrão, mas há uma versão do Enterpri $ e com suporte para sidecars. O conjunto de recursos é atraente e a interface do usuário parece agradável e fácil de usar. Também parece haver APIs se você quiser se integrar a outros clientes ou criar seus próprios (por exemplo, CLI). E há algo a ser dito sobre o aspecto de plataforma cruzada se você quiser manter seus arquivos em mais de uma plataforma.
Para esta e outras soluções similares, tudo se resume a se você pode viver com o ... vamos encarar isso ... meio hacky marcar detalhes de persistência! :)
Editar: Veja algumas informações de alguém que usa tags incorporadas: Adicionando tags a arquivos (PDFs) e processando a partir da linha de comando ou script O restante do thread pode ser de interesse, também.