Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Renommmage de fichiers

11 réponses
Avatar
Gérard Rigaud
bonjour,

J'aimerais pouvoir renommer les fichiers "ABC-xxxxx.jpg" en "xxxxx-ABC.jpg".

Il y a certainement une solution simple, mais avec les quelques renommeurs
que je connais je n'ai pas trouvé.

--

merci d'avance pour la réponse

Gérard Rigaud

10 réponses

1 2
Avatar
at
Gérard Rigaud a formulé la demande :
bonjour,

J'aimerais pouvoir renommer les fichiers "ABC-xxxxx.jpg" en "xxxxx-ABC.jpg".

Il y a certainement une solution simple, mais avec les quelques renommeurs
que je connais je n'ai pas trouvé.



ABC est constant ? Par exemple, est-ce

vacances-djkhfjksdhf.jpg
vacances-dsfsdfsdfds.jpg

qui doit devenir

djkhfjksdhf-vacances.jpg
...

Si oui, je pense que c'est assez commun en "renommage" d'insérer et de
couper dans les logiciels que tu as sous la main.
Avatar
LeLapin
at a tapoté du bout de ses petites papattes :
Gérard Rigaud a formulé la demande :
bonjour,

J'aimerais pouvoir renommer les fichiers "ABC-xxxxx.jpg" en
"xxxxx-ABC.jpg".

Il y a certainement une solution simple, mais avec les quelques renommeurs
que je connais je n'ai pas trouvé.



ABC est constant ? Par exemple, est-ce

vacances-djkhfjksdhf.jpg
vacances-dsfsdfsdfds.jpg

qui doit devenir

djkhfjksdhf-vacances.jpg
...

Si oui, je pense que c'est assez commun en "renommage" d'insérer et de couper
dans les logiciels que tu as sous la main.



ren ABC-*.jpg *-ABC.jpg ?

--
LeLapin
Avatar
at
Après mûre réflexion, LeLapin a écrit :

ren ABC-*.jpg *-ABC.jpg ?



Negatif, ren supprime ce qui est dans *

par contre

ren ABC-??????-.jpg ABC-??????-ABC.jpg

on se rapproche...
Avatar
Fred
"Gérard Rigaud" a écrit dans le message
de news: 4b44b70f$0$24228$
bonjour,

J'aimerais pouvoir renommer les fichiers "ABC-xxxxx.jpg" en
"xxxxx-ABC.jpg".

Il y a certainement une solution simple, mais avec les quelques renommeurs
que je connais je n'ai pas trouvé.



Tu peux faire un petit programme en C, C++, VB, VBS, etc
(fr.comp.os.ms-windows.programmation pour ça..)
Avatar
Gérard Rigaud
at wrote:
Gérard Rigaud a formulé la demande :
bonjour,

J'aimerais pouvoir renommer les fichiers "ABC-xxxxx.jpg" en
"xxxxx-ABC.jpg".





ABC est constant ?



non

tous les noms de fichiers ont la même structure : 3 lettres - nombre à 5
chiffres

ce que je recherche : dans un traitement par lots inverser nombre et lettres
(sans bien sûr changer ni le nombre ni les lettres).

--

merci
Gérard Rigaud
Avatar
Gérard Rigaud
Fred wrote:
"Gérard Rigaud" a écrit dans le
message de news: 4b44b70f$0$24228$
J'aimerais pouvoir renommer les fichiers "ABC-xxxxx.jpg" en
"xxxxx-ABC.jpg".



Tu peux faire un petit programme en C, C++, VB, VBS, etc
(fr.comp.os.ms-windows.programmation pour ça..)



Je préférerais un logiciel tout prêt, si ce n'est pas trop demander !!

moi et la programmation ... pas trop copains !

--

merci
Gérard Rigaud
Avatar
at
Gérard Rigaud a utilisé son clavier pour écrire :

Je préférerais un logiciel tout prêt, si ce n'est pas trop demander !!

moi et la programmation ... pas trop copains !



Bon, Noël est passé, mais j'ai quand même fait ça pour toi

http://cjoint.com/data/bhjM4RVzmt.htm

Écrit en vb6, 28 ko.

Bye.
Avatar
Gérard Rigaud
at wrote:
Gérard Rigaud a utilisé son clavier pour écrire :

Je préférerais un logiciel tout prêt, si ce n'est pas trop demander



Bon, Noël est passé, mais j'ai quand même fait ça pour toi

http://cjoint.com/data/bhjM4RVzmt.htm

Écrit en vb6, 28 ko.



J'espère que Dieu te le rendra !
Un grand merci ... en attendant que je teste !

Si ça marche, je vais apprendre le visual basic !

--

Gérard Rigaud
Avatar
at
Le 07/01/2010, Gérard Rigaud a supposé :

J'espère que Dieu te le rendra !
Un grand merci ... en attendant que je teste !

Si ça marche, je vais apprendre le visual basic !



Tu devrais, le code qui traite le "renommage" tient en quelques lignes:


Private Sub Command1_Click()
Text3.Text = ""
Dim i, x As Integer

Do While i < List1.ListCount

Dim nom, ext As Variant
Dim nouveau, fichier, dossier As String

sep = Split(List1.List(i), "", , vbTextCompare)
fichier = sep(UBound(sep))

ext = Split(fichier, Text1, , vbTextCompare)
nom = Split(ext(0), Text2, , vbTextCompare)

dossier = "": x = 0
While x < UBound(sep)
dossier = dossier & sep(x) & ""
x = x + 1
Wend


nouveau = dossier & nom(1) & Text2 & nom(0) & Text1 & ext(1)
Text3.Text = Text3 & ">Renomme " & List1.List(i) & " devient " & nom(1)
& Text2 & nom(0) & Text1 & ext(1) & vbCrLf

If Check1.Value = 0 Then

Name List1.List(i) As nouveau
List1.RemoveItem (i): i = i - 1

End If

i = i + 1
Loop

Exit Sub
recup:
MsgBox Err.Description
end sub


Il existe d'autres produits, comme le purebasic:
http://purebasic.com/

et d'autres encore, faut juste se lancer, y'a rien à regretter après
:)
Avatar
Pierre Maurette
Gérard Rigaud, le 06/01/2010 a écrit :
bonjour,

J'aimerais pouvoir renommer les fichiers "ABC-xxxxx.jpg" en "xxxxx-ABC.jpg".

Il y a certainement une solution simple, mais avec les quelques renommeurs
que je connais je n'ai pas trouvé.



Je ne suis pas sûr que ce soit très simple. Avec vos renommeurs
peut-être y a-t-il une solution en deux passes:
"ABC-xxxxx.jpg" -> "xxxxx-ABC-xxxxx.jpg" -> "xxxxx-ABC.jpg"
ou
"ABC-xxxxx.jpg" -> "ABC-xxxxx-ABC.jpg" -> "xxxxx-ABC.jpg"

Le renommeur que j'utilise de temps en temps le fait très bien en une
passe et de deux façons.
Il s'agit de <URL:http://www.bulkrenameutility.co.uk/Main_Intro.php>,
download ici <URL:http://www.bulkrenameutility.co.uk/Download.php>

J'ai bien noté dans un autre fil que les données sont "tous les noms de
fichiers ont la même structure : 3 lettres - nombre à 5 chiffres".

Vous choisissez un répertoire, et vous allez tout de suite dans
/Selections (12)/ pour créer un filtre. Si vous cochez /Subfolders/ la
liste sera récursive. Vous pouvez filtrer avec /*.jpg/, ou affiner avec
par exemple /???-*.jpg/ ou /???-?????.jpg/. Ensuite, sous peine de
chercher un moment, il faut savoir que le renommage ne s'appliquera que
pour les fichiers sélectionnés dans la colonne /Name/. Il sera visible
dans la colonne /New Name/, et ne sera réellement appliqué qu'en
cliquant sur le bouton /Rename/ en bas à droite.

Première solution par les RegEx. La seule case à renseigner est /RegEx
(1)/. Vous pouvez mettre dans /Match/: ^([A-Za-z ]{3})-([0-9]{5})
et dans /Replace/: 2-1
C'est simple à ajuster, la doc de l'aide, d'une page sur les RegEx
Perl, suffit. Ici nous avons 3 lettres insensibles à la casse, le
tiret, et 5 chiffres. En fait, en rajoutant un $: ^([A-Za-z
]{3})-([0-9]{5})$ nous serions encore bien plus stricts, mais c'est
très redondant avec le filtre des fichiers.

Seconde solution, en bricolant. On efface, resette ou dévalide le
/RegEx (1)/ si nécessaire. On va dans /Remove (5)/ et on tape - dans la
case /Chars/. Ensuite on va dans /Move Copy (6)/ et on remplit ainsi:
/Move fisrt/, /3/, /To end/, /on s'en fiche/, et enfin - dans /Sep/. Ça
doit fonctionner.

Sinon, j'ai programme en Python qui me fait du rename, il suffit que je
lui colle la bonne fonction, je vous le posterai.


--
Pierre Maurette
1 2