Estoy usando AppleScript y Python juntos para recopilar información del sistema sobre las Mac en mi stock, así como agregar información adicional al campo de comentarios de Spotlight.
Específicamente, AppleScript recopila la información en la Mac cuyos detalles estoy capturando (mientras se inicia desde una unidad USB externa). Uso cuadros de diálogo, etc. para recopilar comentarios sobre la versión del sistema operativo que se instalará, el número de pedido y el nombre comercial real de la máquina (gracias a enlace ), todos estos se guardan como comentarios en el archivo del Perfil del Sistema * .spx final generado por el script.
Luego uso Dropbox para enviar el archivo a mi Mac principal (que ejecuta Filemaker). Utilizo un script Python bastante complicado para leer los datos XML del archivo del generador de perfiles del sistema y luego pegar la información crítica del hardware, como los números de serie, el tamaño y tipo de HD, etc. en los campos relevantes de la base de datos.
Me gustaría analizar los comentarios de Spotlight del archivo spx para obtener la información adicional, por ejemplo, nombre de marketing, nombre de modelo y número de pedido.
Intento usar (en el script Python)
spotlightComments = 'mdls -raw -name kMDItemFinderComment ' + str(file_path)
para analizar los comentarios. Incluso en Terminal como un comando independiente, esto devuelve solo una línea en blanco, a pesar de que los comentarios son visibles cuando hago clic derecho en el archivo spx y voy a "Obtener información". N.B esto es diferente de "(null)" que solía obtener al usar otros servicios en la nube como Sync.com que no parecen transferir metadatos de archivos como los comentarios de Spotlight.
Si abro la edición de los comentarios de Spotlight del archivo y agrego un solo "" carácter de espacio al final de la cadena, el comando funciona, es decir, recupero algo así como
iMac Late 2012 | 300001234 | 10.12
Esto se puede dividir aún más con el comando de Python
parts = spotlightComments.split('|')
De todos modos de vuelta a AppleScript!
He intentado realizar una acción de carpeta para agregar automáticamente un espacio / "" carácter al final de los comentarios de un archivo en el momento en que se agrega algo a la carpeta que lo contiene, pero no parece que suceda nada.
Aquí está mi script ...
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
Incluso cuando cambio la cadena anexada por algo mucho más obvio, todavía no hay cambio. También he intentado usar el 'asistente' de Automator.app para realizar acciones de carpeta, así como escribir manualmente el script, almacenarlo en "~ / Library / Scripts / Folder Action Scripts" y luego conectar la carpeta al script con "Folder Actions Configuración "
¿Cómo puedo agregar texto a los comentarios existentes en el Finder a través de la automatización?