Действие папки для добавления к комментарию Spotlight для файлов в Finder

Я использую AppleScript и Python вместе для сбора системной информации о компьютерах Mac, имеющихся в наличии, а также добавляю некоторую дополнительную информацию в поле комментариев Spotlight.

В частности, AppleScript собирает информацию о Mac, чьи данные я собираю (при загрузке на внешний USB-накопитель). Я использую диалоговые окна и т. д. для сбора отзывов об устанавливаемой версии ОС, номере заказа, а также фактическом маркетинговом названии машины (спасибо https://github.com/MagerValp/MacModelShelf ), все они сохраняются в виде комментариев в окончательный файл System Profiler *.spx, который создается/сохраняется сценарием.

Затем я использую Dropbox, чтобы отправить файл обратно на мой основной Mac (на котором работает Filemaker). Я использую довольно сложный скрипт Python для чтения данных XML из файла системного профилировщика, а затем для вставки важной информации об оборудовании, такой как серийные номера, размер и тип жесткого диска и т. д., в соответствующие поля базы данных.

Я хотел бы проанализировать комментарии Spotlight к файлу spx, чтобы получить дополнительную информацию, например, маркетинговое название, название модели и номер заказа.

Я пытаюсь использовать (в сценарии Python)

spotlightComments = 'mdls -raw -name kMDItemFinderComment ' + str(file_path)

для разбора комментариев. Даже в терминале в качестве отдельной команды это возвращает только пустую строку, несмотря на то, что комментарии видны, когда я щелкаю правой кнопкой мыши файл spx и перехожу к «Получить информацию». Обратите внимание, что это отличается от «(null)», которое я использовал при использовании других облачных сервисов, таких как Sync.com, которые, по-видимому, не переносят метаданные файлов, такие как комментарии Spotlight.

Если я открою редактирование комментариев Spotlight к файлу и добавлю только один символ пробела " " в конце строки, команда сработает, т.е. я верну что-то вроде

iMac Late 2012 | 300001234 | 10.12

Это можно дополнительно разделить с помощью команды Python

parts = spotlightComments.split('|')

В любом случае вернемся к AppleScript!

Я попытался сделать действие с папкой, чтобы автоматически добавлять один символ пробела/" " в конец комментариев к файлу в тот момент, когда что-то добавляется в папку, содержащую его, но, похоже, ничего не происходит.

Вот мой скрипт...

on adding folder items to this_folder after receiving added_items

    repeat with currentFile in added_items

        set TheComment to the comment of the currentFile

        set comment of the currentFile to TheComment & " "

    end repeat

end adding folder items to

Даже когда я заменяю добавленную строку на что-то гораздо более очевидное, изменений все равно нет. Я также пытался использовать «мастер» Automator.app для создания действий с папками, а также вручную писать сценарий, сохранять его в «~/Library/Scripts/Folder Action Scripts», а затем подключать папку к сценарию с помощью «Действия с папками». Настраивать"

Как я могу добавить текст к существующим комментариям в Finder с помощью автоматизации?

Ответы (1)

Кажется, я нашел ответ...

on adding folder items to this_folder after receiving added_items

    tell application "Finder"

        repeat with currentFile in added_items

            set TheComment to the comment of the currentFile

            set comment of the currentFile to TheComment & "test"

        end repeat

    end tell

end adding folder items to