Можно ли пометить файл или папку в Mavericks с помощью команды терминала?
terminal
mavericks
finder-tag
macos
GedankenNebel
источник
источник
Ответы:
Вы можете использовать xattr. Это копирует теги из файла1 в файл2:
xattr -wx com.apple.metadata:_kMDItemUserTags "$(xattr -px com.apple.metadata:_kMDItemUserTags file1)" file2;xattr -wx com.apple.FinderInfo "$(xattr -px com.apple.FinderInfo file1)" file2
Теги хранятся в списке свойств в виде единого массива строк:
Если флаг kColor в com.apple.FinderInfo не установлен, Finder не показывает круги для цветов. Если флаг kColor установлен в оранжевый цвет, а файл имеет красную метку, Finder отображает как красные, так и оранжевые кружки. Вы можете установить флаг kColor с помощью AppleScript:
xattr -w com.apple.metadata:_kMDItemUserTags '("Red\n6","new tag")' ~/desktop/file4;osascript -e 'on run {a}' -e 'tell app "Finder" to set label index of (POSIX file a as alias) to item 1 of {2, 1, 3, 6, 4, 5, 7}' -e end ~/desktop/file4
xattr -p com.apple.FinderInfo file|head -n1|cut -c28-29
печатает значение битов, используемых для флага kColor. Красный - это C, оранжевый - это E, желтый - это A, зеленый - это 4, синий - это 8, пурпурный - это 6, а серый - это 2. Флаг, который добавил бы 1 к значениям, не используется в OS X.Изменить: вы также можете использовать тег :
тег можно установить с помощью
brew install tag
илиsudo port install tag
.источник
Можно манипулировать тегами с помощью команд bash. Там нет необходимости стороннего "тега" утилитой.
Эта команда выводит список всех тегов файла ($ src):
А вот как вы можете добавить тег ($ newtag) в файл ($ src):
Вот небольшой скрипт оболочки, который экспортирует функцию «теги». Использование:
Эта функция может быть легко расширена для поддержки удаления.
источник
xattr -wx
команда не выполняется, если в файле еще нет тегов. Как я могу избежать этого?xattr -px …
команды, которую вы дали для показа тегов в одной из моих папок, дает следующий вывод:"language:Objective-C\n2"
(новая строка)"platform:iOS\n4"
. Честно говоря, если вы собираетесь обернуть свой умеренно сложный код оболочки в функцию bash, вы просто дублируете усилие тега , что дает преимущество в поддержании сообщества.