Ordneraktion zum Anhängen an den Spotlight-Kommentar für Dateien im Finder

Ich verwende AppleScript und Python zusammen, um Systeminformationen über die Macs in meinem Bestand zu sammeln und einige ergänzende Informationen zum Spotlight-Kommentarfeld hinzuzufügen.

Insbesondere sammelt AppleScript die Informationen auf dem Mac, dessen Details ich erfasse (während er von einem externen USB-Laufwerk hochgefahren wird). Ich verwende Dialogfelder usw., um Feedback über die zu installierende Betriebssystemversion, die Bestellnummer sowie den tatsächlichen Marketingnamen der Maschine zu sammeln (danke an https://github.com/MagerValp/MacModelShelf ), diese werden alle als Kommentare in der gespeichert Endgültige System Profiler *.spx-Datei, die vom Skript generiert/gespeichert wird.

Ich verwende dann Dropbox, um die Datei an meinen Haupt-Mac (auf dem Filemaker ausgeführt wird) zurückzusenden. Ich verwende ein ziemlich kompliziertes Python-Skript, um die XML-Daten der System-Profiler-Datei zu lesen und dann die kritischen Hardwareinformationen wie Seriennummern, HD-Größe und -Typ usw. in die entsprechenden Felder der Datenbank einzufügen.

Ich möchte die Spotlight-Kommentare der SPX-Datei analysieren, um an die zusätzlichen Informationen zu gelangen, z. B. Marketingname, Modellname und Bestellnummer.

Ich versuche es mit (im Python-Skript)

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

um die Kommentare zu analysieren. Sogar in Terminal als eigenständiger Befehl gibt dies nur eine leere Zeile zurück, obwohl die Kommentare sichtbar sind, wenn ich mit der rechten Maustaste auf die SPX-Datei klicke und zu „Get Info“ gehe. Beachten Sie , dass dies anders ist als das „(null)“, das ich früher bei der Verwendung anderer Cloud-Dienste wie Sync.com erhalten habe, die anscheinend keine Datei-Metadaten wie Spotlight-Kommentare übertragen.

Wenn ich die Spotlight-Kommentare der Datei öffne und nur ein einzelnes Leerzeichen " " am Ende der Zeichenfolge hinzufüge, funktioniert der Befehl - dh ich bekomme so etwas wie zurück

iMac Late 2012 | 300001234 | 10.12

Dies kann mit dem Python-Befehl weiter aufgeteilt werden

parts = spotlightComments.split('|')

Wie auch immer, zurück zu AppleScript!

Ich habe versucht, eine Ordneraktion zu erstellen, um automatisch ein einzelnes Leerzeichen/" " Zeichen an das Ende der Kommentare einer Datei anzuhängen, sobald etwas zu dem Ordner hinzugefügt wird, der es enthält, aber es scheint überhaupt nichts zu passieren.

Hier ist mein Skript...

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

Selbst wenn ich die angehängte Zeichenfolge durch etwas viel Offensichtlicheres austausche, gibt es immer noch keine Änderung. Ich habe auch versucht, den „Wizard“ von Automator.app zu verwenden, um Ordneraktionen durchzuführen sowie das Skript manuell zu schreiben, es in „~/Library/Scripts/Folder Action Scripts“ zu speichern und dann den Ordner mit „Folder Actions“ mit dem Skript zu verbinden Aufstellen"

Wie kann ich über die Automatisierung Text an vorhandene Kommentare im Finder anhängen?

Antworten (1)

Ich glaube ich habe die Antwort gefunden...

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