[Linux-bruxelles] rename recursif

quatron mpa01 at scarlet.be
Lun 4 Fév 16:38:00 CET 2019


Merci beaucoup Sébastien.
Je teste cela dès que mon backup est terminé.

A+

--
M Paquet


Le 2/4/19 à 3:08 PM, Sébastien Adam a écrit :
> Le script peut être téléchargé ici:
> 
> https://framadrop.org/r/aIkTk28RsB#FW8EAt3sNkfbUPUPdpE7MHQ5Q7IuRLJNt4i3mOHDdIQ= 
> 
> 
> Tu n'as juste qu'à télécharger le fichier jpg_ext_to_lowercase.py, lui 
> donner les droits d'exécution et l'exécuter. Je te conseille de faire un 
> backup de tes fichiers avant l'exécution du script (j'ai testé une série 
> de cas, mais on ne sait jamais...).
> 
> Le script va rechercher dans le répertoire courant, et les 
> sous-répertoires, tous les fichiers '*.JPG' et va les renommer en 
> '*.jpg'. J'ai juste changé une petite chose à ta demande. Si le fichier 
> '*.jpg' existe déjà, il ne sera par renommé en '*-x.jpg', mais ne 
> '*-<n>.jpg' avec <n> un indice (1, 2...). Si par exemple tu as un 
> fichier 'xxxx.JPG' et qu'il existe déjà un 'xxxx.jpg' et un 
> 'xxxx-1.jpg', le fichier 'xxxx.JPG' sera renommé en 'xxxx-2.jpg'. Je 
> n'aime pas avoir à exécuter une action sans condition. Dans le cas (peu 
> probable) où tu aurais un fichier '*-x.jpg' existant, il serait écrasé 
> sans avertissement.
> 
> Pour chaque fichier renommé, le script va vérifier s'il existe un 
> fichier .xmp correspondant. Si c'est le cas, ce dernier sera renommé de 
> la même manière que le fichier principal.
> 
> En principe, le script devrait fonctionner avec Python 3.5. Ma version 
> de Python est la 3.6. Il n'a besoin d'aucune dépendance (je n'ai utilisé 
> que les librairies de base).
> 
> J'espère que cela t'aidera :-)
> 
> -------------------
> Sébastien Adam
> http://www.sebastienadam.be/
> https://telegram.me/SebastienAdam
> Contactable sur Signal: https://signal.org/
> 
> Le 3/02/19 à 16:36, mpa01 a écrit :
>> Salut,
>>
>> c'est presque cela...
>> Mon erreur est d'avoir fais un back-up de mes photos à partir d'un 
>> disque ext4 vers un disque USB ntfs avec ntfs-3g SANS avoir précisé 
>> que je voulais rester case non sensitive....
>> Donc je ne sais plus réinstaller mes fichiers sur un disque commun 
>> accessible sous W$ et sous Linux en ntfs-3g option windows_names.
>>
>> J'ai essayé pyRename mais il n'est pas récursif...
>> J'ai essayé Metamorphose mais les dépendances ne suivent pas (je suis 
>> sous Linux Mint 18)
>> ....
>>
>> Ta solution est donc tentante ;-) si elle ne te prends pas trop de 
>> temps et si cela ne t’ennuie pas.
>>
>> Je voudrais que les extension DSC*.JPG deviennent DSC*.jpg
>> Sauf si le fichier existe déjà auquel cas il doit devenir 
>> DSC*-x.jpg(la lettre x (minuscule ou majuscule) car j'ai aussi des 
>> fichiers -1.jpg et -2.jpg etc...)
>>
>> Le problème risque d'être les fichiers DSC*.JPG.xmp créés par Darktable
>> qui devraient devenir des fichiers DSC*.jpg.xmp sauf si le fichier 
>> existe auquel cas il doivent devenir
>> DSC*-x.jpg.xmp
>> (DarkTable crée par défaut des fichiers 'nom de la photo'.'extension 
>> du fichier'.xmp pour permettre des modifications sans altérer la 
>> source. Je préfère, personnellement, travailler avec des révision de 
>> fichier.)
>>
>> which python3
>> donne:
>> /usr/bin/python3
>>
>> python3 --version
>> donne:
>> Python 3.5.2
>>
>>
>> BAT
>>
>>
>> On Sun, 3 Feb 2019 13:09:02 +0100, Sébastien Adam wrote:
>>> Salut,
>>>
>>> À priori, si tes fichiers sont sur un disque en NTFS, ils ne peut pas
>>> y avoir plusieurs fichiers avec le même nom et une case différente (en
>>> NTFS, p.e. IMG_1234.jpg est équivalent à IMG_1234.JPG).
>>>
>>> Il est assez facile de faire un script pour renommer tous tes
>>> fichiers. Je peux éventuellement le faire en Pyhton, si tu veux (ou
>>> d'autres pourront peut-être le faire dans d'autre langages, ou avec
>>> des outils spécifiques).
>>>
>>> Il faudrait juste que tu me donnes le résultat des commandes
>>> suivantes exécutées dans un terminal:
>>>
>>> which pyhton3
>>> python3 --version
>>>
>>> Aussi, il faudrait que tu explique exactement ce que tu veux
>>> (corrige-moi si je me trompe):
>>>
>>> * Si le fichier a une extension '.jpg', le renommer avec une
>>> extension '.JPG'.
>>> * Si un fichier est à renommer, vérifier s'il n'existe pas déjà un
>>> fichier avec le nouveau nom. Si c'est le cas, renommer le fichier en
>>> '*-x.JPG' (avec 'x' étant un nombre à incrémenter, je suppose).
>>>
>>> À bientôt.
>>>
>>> -------------------
>>> Sébastien Adam
>>> http://www.sebastienadam.be/
>>> https://telegram.me/SebastienAdam
>>> Contactable sur Signal: https://signal.org/
>>>
>>> Le 3/02/19 à 11:45, mpa01 a écrit :
>>>> On Sun, 03 Feb 2019 11:37:07 +0100, mpa01 wrote:
>>>>> Re-,
>>>>>
>>>>> Je continue :
>>>>>
>>>>> Certains fichiers photo ont une extantion .JPG et d'autres .jpg.
>>>>>
>>>>> Le problème est que certains fichiers modifiés sont sauvés sous le
>>>>> même nom (DSC_0578 par exemple) mais avec .jpg ET .JPG.
>>>>>
>>>>> Je voudrais donc modifier tous mes fichiers DSC*.jpg en DSC*-x.JPG
>>>>> (il y en a 56217 sur le disque) de manière récursive (mais sure) à
>>>>> partie de mon répertoire "pictures".
>>>>>
>>>>> Pouvez vous m'aider?
>>>>>
>>>>> A+
>>>>>
>>>>> _______________________________________________
>>>>> Linux-bruxelles :
>>>>> Èchanger, partager, s'informer par mails sur toute action,
>>>>> proposition accordée avec: http://www.bxlug.be/?Nos-statuts
>>>>>
>>>>> Linux-bruxelles at lists.bxlug.be
>>>>> https://listes.domainepublic.net/listinfo/linux-bruxelles
>>>>   J'ai oublié de dire que les fichiers sont sur un disque ntfs :-( 
>>>> mais déposés avec ntfs-3g à partie de Linux.
>>>> _______________________________________________
>>>> Linux-bruxelles :
>>>> Èchanger, partager, s'informer par mails sur toute action, 
>>>> proposition accordée avec: http://www.bxlug.be/?Nos-statuts
>>>> Linux-bruxelles at lists.bxlug.be
>>>> https://listes.domainepublic.net/listinfo/linux-bruxelles
>>>>
>>
>>
> 




Plus d'informations sur la liste de diffusion Linux-bruxelles