OSX-Tags von Terminal / Konsole

2

Ist es möglich, ein Skript zu erstellen, um alle mit Finder markierten Elemente in Terminal / Shell anzuzeigen?

Ich möchte so etwas erstellen:

ls-tag "Music", um alle Elemente des Music-Tags anzuzeigen

Pavel
quelle

Antworten:

5

Dafür ist kein Skript erforderlich. Einfach verwenden mdfind 'kMDItemUserTags=<tag>' um alle Artikel mit dem Tag zu finden <tag>.

In Ihrem Fall ist das so mdfind 'kMDItemUserTags=Music'.

Wenn Sie die Suche auf ein spezielles Verzeichnis beschränken möchten, verwenden Sie Folgendes:

mdfind 'kMDItemUserTags=Music' -onlyin /path/to/folder

z.B.

mdfind 'kMDItemUserTags=Music' -onlyin ~/Music/Classical\ Music/Сергей\ Сергеевич\ Прокофьев
klanomath
quelle
als du so sehr! meine Produktivität wird steigen)
Pavel
4

Es gibt ein Befehlszeilentool namens Etikett :

tag ist ein Befehlszeilentool zum Bearbeiten von Tags in Mac OS X-Dateien (10.9 Mavericks und höher) und zum Abfragen von Dateien mit diesen Tags. tag kann die integrierte Metadatensuchfunktion des Dateisystems verwenden, um alle Dateien, die mit einem bestimmten Satz von Tags markiert wurden, schnell zu finden.

Die Hilfeseite:

tag - A tool for manipulating and querying file tags.
  usage:
    tag -a | --add <tags> <path>...     Add tags to file
    tag -r | --remove <tags> <path>...  Remove tags from file
    tag -s | --set <tags> <path>...     Set tags on file
    tag -m | --match <tags> <path>...   Display files with matching tags
    tag -l | --list <path>...           List the tags on file
    tag -f | --find <tags> <path>...    Find all files with tags, limited to paths if present
  <tags> is a comma-separated list of tag names; use * to match/find any tag.
  additional options:
        -v | --version      Display version
        -h | --help         Display this help
        -A | --all          Display invisible files while enumerating
        -e | --enter        Enter/enumerate directories provided
        -d | --descend      Recursively descend into directories
        -n | --name         Turn on filename display in output (default)
        -N | --no-name      Turn off filename display in output (list, find, match)
        -t | --tags         Turn on tags display in output (find, match)
        -T | --no-tags      Turn off tags display in output (list)
        -g | --garrulous    Display tags each on own line (list, find, match)
        -G | --no-garrulous Display tags comma-separated after filename (default)
        -H | --home         Find tagged files in user home directory
        -L | --local        Find tagged files in home + local filesystems
        -R | --network      Find tagged files in home + local + network filesystems
        -0 | --nul          Terminate lines with NUL (\0) for use with xargs -0

Verfügbar um https://github.com/jdberry/tag/ oder über Macports oder Homebrew

PeterVP
quelle