26 votes

Mac OS X : ajouter un champ de métadonnées personnalisé à n'importe quel fichier

Je voudrais pouvoir définir (et obtenir) un attribut de métadonnées personnalisé pour n'importe quel fichier.

Quelle est la meilleure manière de faire cela?

Merci

26voto

Lri Points 8342

Les noms d'attributs personnalisés fonctionnent pour moi:

$ xattr -w com.apple.metadata:MonAttribut gfdylvyieo a.txt
$ mdls -n MonAttribut a.txt
MonAttribut = "gfdylvyieo"
$ mdfind gfdylvyieo
/private/tmp/a.txt
$ mdfind 'MonAttribut=*'
/private/tmp/a.txt

xattr -wx n'est pas nécessaire si la valeur est du texte brut:

xattr -w com.apple.metadata:kMDItemFinderComment aa fichier.txt

Lorsque vous ajoutez un commentaire Spotlight depuis Finder, il est stocké à la fois en tant qu'attribut étendu et dans un fichier .DS_Store. Si vous ajoutez simplement un attribut étendu, le champ de commentaire Spotlight apparaît vide dans Finder, mais les métadonnées du commentaire sont toujours indexées par Spotlight.

11voto

Ned Deily Points 40248

Le cadre OpenMeta est une norme tierce de facto pour ajouter des métadonnées aux fichiers OS X à l'aide d'attributs étendus. Il est utilisé par un certain nombre d'applications tierces.

10voto

Gordon Davisson Points 22534

Cela semble être un travail pour les attributs étendus. Vous pouvez les obtenir et les définir en ligne de commande avec xattr, et à partir de programmes avec getxattr et setxattr.

Cependant, les attributs étendus ne sont généralement pas indexés par Spotlight. La seule exception que je connaisse à cela est l'attribut "com.apple.metadata:kMDItemFinderComment", qui devrait contenir un plist au format binaire avec le commentaire réel indexable (voir la réponse de @PurplePilot). Cette page affirme que Spotlight indexera d'autres xattrs préfixés par "com.apple.metadata:", mais je n'ai pas réussi à le faire fonctionner.

7voto

Anderson Freitas Points 448

Si vous souhaitez définir de manière programmée le "Commentaire du Finder" d'un fichier (voir la réponse de @PurplePilot), essayez ceci:

1) Créez un fichier plist xml régulier avec vos commentaires:

My Custom Comment

2) Convertissez le plist au format binaire accepté:

plutil -convert binary1 my_custom_comment.plist

3) En utilisant xattr, définissez la métadonnée kMDItemFinderComment:

xattr -wx "com.apple.metadata:kMDItemFinderComment" "`xxd -ps my_custom_comment.plist`" MyFile

Vous pouvez voir avec xattr -l MyFile que les commentaires sont là et dans le bon format binaire, mais pour une raison quelconque, le Finder ne les affiche pas (du moins pour moi) dans la colonne Commentaires.

La recherche dans la base de données Spotlight avec mdfind "My Custom Comment" renverra tous les fichiers avec ce commentaire.

1voto

PurplePilot Points 4039

Cliquez avec le bouton droit et sélectionnez Info, ou cmd + i lorsque le fichier est sélectionné dans le Finder ouvrira un panneau d'information et vous pourrez ajouter des données en haut qui seront référencées dans Spotlight. Cela s'appelle des commentaires Spotlight. Vous pouvez également le faire avec des répertoires. Je ne suis pas sûr que ce soit la meilleure façon de le faire mais c'est la seule façon que je connaisse.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X