macOS Monterey Modifier le nom de mes photos

pat_13

Membre confirmé
3 Novembre 2019
25
0
71
Bonjour,
je constate que j'ai beaucoup de photos qui, après renommage sans doute, se retrouvent avec un espace devant le premier caractère du nom. Cela crée donc beaucoup de problèmes dans l'ordre de mes photos. Je voudrais savoir si quelqu'un savait créer un petit script applicable pour x photos dans un dossier par exemple et qui supprimerait cet espace indésirable. Je pense que ça ne doit pas être très compliqué pour un connaisseur mais ça n'est pas mon cas. Je précise que suite à diverses manipulations certaines photos ont leurs dates de création de modifiées donc il n'est pas possible de refaire un renommage à partir des données exif. Merci par avance.
 
Bonjour,

Les fichiers à renommer sont ils tous dans un dossier (sans sous-dossier) ?

Après confirmation je te ferais un petit applescript pour faire çà .
 
Bonjour,

Les fichiers à renommer sont ils tous dans un dossier (sans sous-dossier) ?

Après confirmation je te ferais un petit applescript pour faire çà .
Merci pour la réponse rapide. En fait j'ai 2 ou 3 dossiers dans lesquels j'ai ce problème. Dans ces dossiers il n'y a pas de sous dossiers.
 
Ok alors essai çà.

pour utiliser le script
Ouvrir l’application “Editeur de script” qui est dans Application—>Utilitaires
Choisir le bouton en bas à gauche “Nouveau document”, dans la fenêtre qui s’ouvre faire un copier-coller du script.
Cliquer sur le bouton en haut à gauche “Exécuter”

Le script te demande de choisir le dossier à traiter...

Attendre que le script te prévienne qu’il à terminé.

Si une erreur à eut lieu il y a un fichier “les erreurs.txt” qui est créer sur le bureau qui contient une ligne par erreurs rencontrée.

Dis moi si c'est bon !
Bloc de code:
set MasterFolder to choose folder with prompt "Sélectionner le dossier contenant les fichiers à renommer"

tell application "Finder"
    set FolderContents to files of folder MasterFolder
end tell

repeat with thisFile in FolderContents
    
    set extens to thisFile -- recupere l'extension du fichier
    set lextension to name extension of extens
    
    set thisFilesName to name of thisFile -- récupere le nom du fichier complet
    set sauv to AppleScript's text item delimiters --sauvegarder la variable delimiteur
    set AppleScript's text item delimiters to {"."} --récupère la partie avant le dernier "."
    set elements to text items of thisFilesName
    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 --restaurer la variable delimiteur
    
    repeat
        if text item 1 of ancien_nom is " " then
            set ancien_nom to characters 2 thru -1 of ancien_nom as string
        else
            set newname to ancien_nom
            exit repeat
        end if
    end repeat
    
    set nouveau_nom to newname & "." & lextension --le nouveau nom avec le . et l'extension
    set test to nomcourt & "." & lextension
    
    tell application "Finder"
        if test is not nouveau_nom then
            try
                set test to (container of thisFile) as string
                set test to test & nouveau_nom
                
                if exists test then
                    set lelog to open for access ((path to desktop folder as text) & "les erreurs.txt") as text with write permission
                    write "Le fichier : " & ancien_nom & " devait devenir " & nouveau_nom & " qui existe déja" & return to lelog starting at eof
                    close access lelog
                else
                    set name of thisFile to nouveau_nom --renomme le fichier
                end if
                
            on error
                set lelog to open for access ((path to desktop folder as text) & "les erreurs.txt") as text with write permission
                write "ERREUR ! Le fichier : " & ancien_nom & " devait devenir " & nouveau_nom & " n'a pas été changé !" & return to lelog starting at eof
                close access lelog
            end try
        end if
    end tell
end repeat

tell application "Finder"
    (display dialog ("waouou ... Ca y est c'est fait !") buttons {"Salut !"})
end tell
 
j'ai d'abord fait un test sur un dossier du Mac, ça semble fonctionner.
par contre j'ai essayé avec un dossier situé sur mon nas et j'ai l'erreur suivante:

error "Erreur dans Finder : Délai dépassé pour un AppleEvent." number -1712
 
Pas prévu pour un NAS
Le NAS est trop long à répondre ...
Il faudrait mettre une tempo, mais ce sera long, il vaut mieux que tu copies ton dossier sur l'ordi !
 
On peut essayer de mettre une tempo de 1 ou 2 secondes par photos pour voir .

tu ajoutes la ligne
delay 2

juste après la ligne
set name of thisFile to nouveau_nom --renomme le fichier
 
comme tu veux ! mais delay 2 veux dire attendre 2 secondes entre chaque photos je pense que ce sera plus long que de transférer un ou 2 dossier sur le mac !
 
en effet il m'annonce encore 15 minutes sinon j'ai 4600 fois 2 secondes
par contre y a t il une astuce pour retransférer mes photos sur le nas car je galère vraiment ça met un temps fou et parfois j'ai un message d'erreur au bout de quelques heures d'attente
 
Je ne connaît pas les NAS, je n'en possède pas !
Il faudra demander sur le forum, il y aura certainement un connaisseur !
 
ok merci je te dirai ce qu'il en est du script sur mon dossier de 4600 photos dans lequel il y a beaucoup de modification de nom à faire (au moins 1000)
 
Pas de problème, content pour toi !