Załóżmy na przykład, że mam strukturę katalogów taką jak
/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]
Czy w wierszu poleceń można użyć ls
(lub czegoś w tym rodzaju) sposobu wyświetlenia wszystkich plików oznaczonych jako „Matematyka”?
EDYCJA: Stworzyłem narzędzie o nazwie tfind
to: https://github.com/tlehman/bin/blob/master/tfind
macos
command-line
filesystem
mavericks
tlehman
źródło
źródło
tag
Jamesa Berry'ego zhttps://github.com/jdberry
. Możesz zainstalować go przezbrew install tag
, dodać tag przeztag -a <tag> <file>
, znaleźć tagi przeztag -f <tag1, tag2>
. Bardzo, bardzo przydatny, używam go cały czas.tag
polecenie. Bardzo łatwo instaluje się przez napar.Odpowiedzi:
Zakładam, że będą xattrami, tak jak obecnie są w wersji 10.8.3 (i starszych)
Obecnie możesz zobaczyć, jakie rozszerzone atrybuty ma plik
ls -l@
.Ale żeby zobaczyć zawartość atrybutów, musisz użyć
xattr
.źródło
xattr -pl com.apple.metadata:_kMDItemUserTags filename
. Jednak nie był to bardzo przyjazny wynik.Tak, możesz znaleźć pliki, których używa dany znacznik użytkownika
mdfind
.Utwórz plik i przypisz niestandardowy znacznik w Finderze.
Następnie wejdź do terminalu; znajdziesz to z:
lub
Zobacz także,
-onlyin aFolder
aby ograniczyć wyszukiwanie.Nie sprawdziłem, jak złożone mogą być te wyrażenia logiczne, ale te dwa przykłady działają.
Możesz potokować dane wyjściowe w
ls
następujący sposób:Ponadto mdfind ma opcję „-0”
co może być praktyczne w przypadku nieprzyjemnych nazw plików.
źródło
mdfind
składnię znaczników, npmdfind "tag:Math"
,mdfind "tag:Math OR tag:Programming"
Możesz pobrać wszystkie tagi pliku za pomocą:
mdls -name kMDItemUserTags filename
źródło