Par exemple, supposons que j'ai une structure de répertoires telle que
/Users
/tlehman
/Math
algebraic_varieties.tex [tagged: Math, Documentation]
projective_geometry.pdf [tagged: Math]
/Development
visualize_surfaces.py [tagged: Math, Programming]
solve_polynomials.scm [tagged: Math]
/guest
/Desktop
welcome.rtf [tagged: Documentation]
/Volumes
/USBKey
assignments_for_may.txt [tagged: Math]
using_LaTeX.pdf [tagged: Documentation]
À partir de la ligne de commande, y a-t-il un moyen que je peux utiliser ls
(ou quelque chose comme ça) pour afficher tous les fichiers marqués comme "Math"?
EDIT: J'ai créé un outil appelé tfind
qui fait cela: https://github.com/tlehman/bin/blob/master/tfind
macos
command-line
filesystem
mavericks
tlehman
la source
la source
tag
de James Berry àhttps://github.com/jdberry
. Vous pouvez l'installer viabrew install tag
, ajouter une balise viatag -a <tag> <file>
, rechercher des balises viatag -f <tag1, tag2>
. Très, très pratique, je l'utilise tout le temps.tag
commande. S'installe très facilement via l'infusion.Réponses:
Je suppose qu'ils seront un xattr comme ils le sont actuellement sur 10.8.3 (et plus anciens)
Actuellement, vous pouvez afficher les attributs étendus d'un fichier avec
ls -l@
.Mais pour voir le contenu des attributs, vous devez utiliser
xattr
.la source
xattr -pl com.apple.metadata:_kMDItemUserTags filename
. Cependant, ce n'était pas une sortie très conviviale.Oui, vous pouvez trouver des fichiers qui ont une balise utilisateur donnée en utilisant
mdfind
.Créez un fichier et attribuez-lui une balise personnalisée dans le Finder.
Allez ensuite dans un terminal; vous le trouverez avec:
ou
Voir aussi
-onlyin aFolder
pour restreindre la recherche.Je n'ai pas vérifié la complexité de ces expressions booléennes, mais ces deux exemples fonctionnent.
Vous pouvez diriger la sortie
ls
comme ceci:De plus, mdfind a une option "-0"
ce qui peut être pratique avec des noms de fichiers désagréables.
la source
mdfind
syntaxe des balises, par exemple:mdfind "tag:Math"
,mdfind "tag:Math OR tag:Programming"
Vous pouvez obtenir toutes les balises d'un fichier avec:
mdls -name kMDItemUserTags filename
la source