В Finder есть столбцы, по которым можно сортировать файлы: Имя, Размер, Вид, Дата, Комментарий и т. Д. Они отображаются в виде заголовков, когда Finder находится в режиме «Список», с соответствующими свойствами файла, показанными ниже.
- Если я Cmd + I файл, и изменить Комментарии на FOO,
mdls
показывает FOO и Finder показывает FOO. - Если я устанавливаю Комментарии на BAR из терминала,
mdls
показывает «BAR», но Finder все еще показывает «FOO»!
Как я могу изменить поле «Комментарий» из терминала, чтобы изменение распространялось в Finder?
$ xattr -w com.apple.metadata:kMDItemFinderComment "BAR" test.txt
$ mdls test.txt
kMDItemFinderComment = "BAR"
Обновление : я заметил, что при использовании Finder / AppleScript для Комментария задается двоичный список свойств, содержащий значение. Так что, возможно, можно обойти AppleScript и повысить производительность?
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<string>My comment</string>
</plist>
Я попытался отредактировать список свойств и передать его обратно xattr
. Однако xattr
выдает сообщение об ошибке, Odd-length string
даже если размер файла hex
на самом деле является четным числом. Кто угодно?
xattr -p com.apple.metadata:kMDItemFinderComment a | xxd -r -p | plutil -convert xml1 -o plist -
nano plist
cat plist | plutil -convert binary1 -o - - | xxd -p -c 999 -u > hex
xattr -w -x com.apple.metadata:kMDItemFinderComment hex test.txt