Applescript : Erreur lors de l'exécution d'un script de renommage |
Bienvenue invité ( Connexion | Inscription )
Applescript : Erreur lors de l'exécution d'un script de renommage |
2 Jul 2021, 12:02
Message
#1
|
|
Nouveau Membre Groupe : Membres Messages : 2 Inscrit : 2 Jul 2021 Membre no 214 260 |
Bonjour à tous,
Je suis nouvelle sur ce forum, qui m'a déjà bien aidée J'aurais besoin d'un petit conseil relatif à l'exécution d'un script. Je suis en stage dans une entreprise qui a besoin de normaliser la nomenclature de ses fichiers pour faciliter leur inventaire/manipulation. La nomenclature que nous avons retenue est "AAAAMMJJ_TITRE_SOUS-TITRE-EVENTUEL". Pour les fichiers plus vieux, j'ai pu me faire des routines en mêlant Automator, Namechanger et manuellement car les noms étaient parfois très variables. Or, j'arrive dans une période où le nommage est dans l'ordre inverse avec un autre format de date : "TITRE SOUS-TITRE-EVENTUEL AAMMJJ". J'ai donc besoin de déplacer la date en première position et de rajouter le préfixe "20" pour avoir un format à 8 chiffres au lieu de 6, ce que ne permettent pas (à ma connaissance) Namechanger et Automator. Grâce à une réponse à un autre post sur ce même forum, j'ai écrit un script Applescript que je pense inclure dans un processus Automator pour corriger certains détails. Le voici (avec très certainement des erreurs/passages inutiles, c'est la première fois que je fais ça) : Code tell application "Finder" set chemin to choose folder with prompt "Sélectionnez le dossier contenant les fichiers à renommer" my inspecter(chemin) end tell on inspecter(un_dossier) tell application "Finder" -- traitement des fichiers : set les_fichiers to files of un_dossier repeat with chaque_fichier in les_fichiers -- traitement d'un fichier tell application "Finder" set nom to name of chaque_fichier --recupere le nom du fichier set extens to document file nom in un_dossier --recupere l extension du fichier set lextension to name extension of extens set sauv to AppleScript's text item delimiters set AppleScript's text item delimiters to {"."} set elements to text items of nom set nomcourt to items 1 thru -2 of elements as string set ancien_nom to nomcourt -- nom sans extension set AppleScript's text item delimiters to sauv set numero to offset of "21" in ancien_nom set numero to numero - 1 set numero to characters 1 thru numero of ancien_nom set debut to result set numero to offset of "21" in ancien_nom set numero to numero + 1 set fin to characters numero thru end of ancien_nom set fin to result set nouveaunom to ("202" & fin & "_" & debut & "." & lextension) as string set name of file nom to nouveaunom end tell end repeat end tell end inspecter Sauf que quand je l'exécute sur des fichiers test, je reçois ce message d'erreur : error "Erreur dans Finder : Il est impossible de régler file [Ancien nom du fichier] à [Nouveau nom souhaité]." number -10006 from file "Ancien nom du fichier" Je précise que le "Nouveau nom souhaité" correspond au résultat que je souhaite obtenir, avec quelques corrections qui peuvent être apportées en incluant le script dans un processus Automator. D'ailleurs, s'il faut enlever certains éléments (notamment la sélection du dossier en début de script, etc) pour que je puisse l'exécuter depuis Automator, n'hésitez pas à me le faire savoir, c'est tout un monde pour moi (déjà que Mac n'est pas mon environnement de base...)! Merci beaucoup de m'avoir lue jusque là (et pour votre indulgence), j'espère que j'ai été assez claire... Bonne journée ! |
|
|
Nous sommes le : 20th May 2024 - 09:24 |