Je dois faire un peu de nettoyage dans les commentaires de Spotlight. Existe-t-il un moyen de lire le commentaire Spotlight, puis de lui attribuer une autre valeur ? Par exemple, disons que je dois supprimer un mot spécifique dans les commentaires. L'ajout est facile, avec Set Spotlight Comments for Finder Items. Je cherche l'action inverse.
Réponse
Trop de publicités?Comme il semble que Automator ne dispose pas d'une action "Get Spotlight Comment" (étonnamment), vous pouvez peut-être effectuer cette opération avec AppleScript. ( Voir ce forum )
Quelque chose comme :
tell application "Finder"
set thisItem to "Macintosh SSD:untitled folder"
set Comm to comment of folder thisItem (* get comment *)
end tell
return Comm (* to return the Comment string for editing *)
Cela renvoie le commentaire (dans la fenêtre "Get Info") du dossier spécifié sur mon bureau, et pourrait être modifié pour modifier le commentaire de tous les éléments transmis par Automator.
Dans Automator, vous devriez ajouter l'action "Run Applescript" et insérer un script comme celui-ci. Malheureusement, je ne pense pas que vous puissiez faire en sorte que le script prenne à la fois les fichiers et le nouveau commentaire en entrée de l'action Automator précédente. Vous devrez donc probablement coder en dur la partie modification du commentaire, et ajouter une partie commentaire, peut-être comme ceci :
on run {input, parameters}
tell application "Finder"
set thisItem to the input as string
set Comm to comment of folder thisItem (* get comment *)
(* manipulate the comment strings*)
set comment of folder thisItem to "NewCommentString" (* set comment *)
end tell
return input (* to pass the file list to next automator action)
end run
Ce script ne modifie actuellement que le commentaire d'un seul fichier - je crois que vous devriez faire une boucle dans la liste des fichiers pour le faire sur plusieurs fichiers. (Pour rendre le nouveau commentaire modifiable lors de l'exécution, peut-être utiliser "Afficher cette action lors de l'exécution" sur l'action *Exécuter AppleScript"). Ou vous pourriez finir par déplacer l'ensemble du script vers AppleScript.