Aide utilisation PowerRename

Fermé
Jeanfile82 Messages postés 64 Date d'inscription vendredi 12 avril 2013 Statut Membre Dernière intervention 30 janvier 2023 - 26 janv. 2023 à 18:21
brucine Messages postés 14749 Date d'inscription lundi 22 février 2021 Statut Membre Dernière intervention 22 mai 2024 - 30 janv. 2023 à 11:05

Bonjour,

J'ai installé PowerToys pour Windows notamment pour utiliser PowerRename.

Malgré pas mal d'essais je n'arrive pas à mes fins.

J'essaie de renommer une liste de fichier tel que suit :

Exemple :

The.Handmaids.Tale.S05E01.FRENCH.AMZN.WEBRip.H264 => The Handmaid's Tale S05E01

The.Handmaids.Tale.S05E02.FRENCH.AMZN.WEBRip.H264 => The Handmaid's Tale S05E02

The.Handmaids.Tale.S05E03.FRENCH.AMZN.WEBRip.H264 => The Handmaid's Tale S05E03

Etc...

Quelqu'un aurait-il la méthodo avec PowerRename pour automatiser le rename de l'ensemble des fichiers selon l'exemple précédent ?

Merci d'avance

4 réponses

fabul Messages postés 37867 Date d'inscription dimanche 18 janvier 2009 Statut Modérateur Dernière intervention 20 mai 2024 5 204
26 janv. 2023 à 18:30

Salut,

Avec PowerRename non, je ne connais pas.

Mais avec Ant Renamer, ça doit être facile.

0
brucine Messages postés 14749 Date d'inscription lundi 22 février 2021 Statut Membre Dernière intervention 22 mai 2024 1 909
26 janv. 2023 à 19:21

Bonjour,

Dès lors que tous les fichiers ont la même longueur (même nom de série), ça se fait sans difficulté dans un batch sans utilitaire dédié: on enlève l'extension, on commence par remplacer tous les points par un espace, on supprime les n caractères excédentaires à droite et on remet l'extension.

 

0
Jeanfile82 Messages postés 64 Date d'inscription vendredi 12 avril 2013 Statut Membre Dernière intervention 30 janvier 2023
Modifié le 27 janv. 2023 à 18:29

Oui j'imagine, mais j'ai pas pigé comment faire avec PowerRename. J'arrive à détecté les chiffres de la saison/épisode mais j'ai l'impression qu'il faut utiliser la recherche d'expression régulière RegEx et c'est pas évident pour comprendre la syntaxe...

Bon, je progresse, hormis que dans mon exemple, tous les fichiers ont la même longueur alors qu'en réalité, le nombre de caractères après les chiffres de l'épisode varient. Je cherche donc à supprimer tout ce qui se trouve après les chiffres de l'épisode.

0
brucine Messages postés 14749 Date d'inscription lundi 22 février 2021 Statut Membre Dernière intervention 22 mai 2024 1 909
27 janv. 2023 à 22:14

Bonjour,

Qu'est-ce qu'il faut pas faire pour télécharger des séries...

Pour que ta Regex fonctionne, avec un utilitaire ou pas, elle ne peut pas reposer sur la longueur de la chaîne mais sur un critère spécifique, on partira du principe que le nom ne peut pas contenir "S0" ailleurs que dans le numéro d'épisode.

Je n'ai pas de H264, j'ai fait le test sur jpg, à toi de remplacer, idem pour le chemin du dossier à traiter:
C:\Users\brucine\Desktop\antibes\*.jpg

 si la chaîne contient moins de 8 "mots", par exemple 7 avec quelque chose du genre Handmaids.Tale sans The devant, on doit placer REM devant la ligne

IF NOT %morceau8%==%EXTENSION% SET morceau8=%morceau8:~0,-1%

Tu crées un nouveau fichier texte, tu le renommes serie.cmd ou ce que tu veux, tu y copies le joyeux bazar qui suit, et tu copies ce fichier dans le dossier contenant les fichiers à traiter.

 

@ECHO OFF
SET EPISODE=S0
SET EXTENSION=jpg

FOR /F "tokens=1-8 delims=." %%a in ('dir /b C:\Users\brucine\Desktop\antibes\*.jpg') DO SET morceau1=%%a & SET morceau2=%%b & SET morceau3=%%c & SET morceau4=%%d & SET morceau5=%%e & SET morceau6=%%f & SET morceau7=%%g & SET morceau8=%%h & CALL :PROCESS

:PROCESS
IF NOT %morceau1%==%EXTENSION% SET morceau1=%morceau1:~0,-1%
IF NOT %morceau2%==%EXTENSION% SET morceau2=%morceau2:~0,-1%
IF NOT %morceau3%==%EXTENSION% SET morceau3=%morceau3:~0,-1%
IF NOT %morceau4%==%EXTENSION% SET morceau4=%morceau4:~0,-1%
IF NOT %morceau5%==%EXTENSION% SET morceau5=%morceau5:~0,-1%
IF NOT %morceau6%==%EXTENSION% SET morceau6=%morceau6:~0,-1%
IF NOT %morceau7%==%EXTENSION% SET morceau7=%morceau7:~0,-1%
IF NOT %morceau8%==%EXTENSION% SET morceau8=%morceau8:~0,-1%
IF NOT %morceau2%==%EXTENSION% SET mo2=%morceau2:~0,2%
IF NOT %morceau3%==%EXTENSION% SET mo3=%morceau3:~0,2%
IF NOT %morceau4%==%EXTENSION% SET mo4=%morceau4:~0,2%
IF NOT %morceau5%==%EXTENSION% SET mo5=%morceau5:~0,2%
IF NOT %morceau6%==%EXTENSION% SET mo6=%morceau6:~0,2%
IF NOT %morceau7%==%EXTENSION% SET mo7=%morceau7:~0,2%
IF %mo2%==%EPISODE% SET new=%morceau1% %morceau2%.%EXTENSION%
IF %mo3%==%EPISODE% SET new=%morceau1% %morceau2% %morceau3%.%EXTENSION%
IF %mo4%==%EPISODE% SET new=%morceau1% %morceau2% %morceau3% %morceau4%.%EXTENSION%
IF %mo5%==%EPISODE% SET new=%morceau1% %morceau2% %morceau3% %morceau4% %morceau5%.%EXTENSION%
SET old=%morceau1%.%morceau2%.%morceau3%.%morceau4%.%morceau5%.%morceau6%.%morceau7%.%EXTENSION%
REN "%old%" "%new%"

:EOF
0
Jeanfile82 Messages postés 64 Date d'inscription vendredi 12 avril 2013 Statut Membre Dernière intervention 30 janvier 2023
29 janv. 2023 à 09:26

Merci, mais ce que j'ai mis était un exemple et je m'aperçois que les nom ne sont que rarement avec le même nombre de caractères, ce qui complique les choses. Je pense que c'est trop compliqué et l'utilitaire n'est pas assez complet pour faire ça je pense.

Je vais continuer à faire les rename à la main je crois.

Merci quand même.

0
brucine Messages postés 14749 Date d'inscription lundi 22 février 2021 Statut Membre Dernière intervention 22 mai 2024 1 909
29 janv. 2023 à 10:23

Bonjour,

La syntaxe ne dépend pas du nombre de caractères mais du nombre de "morceaux" (ce qu'il y a entre les points).

En l'état, elle cherche le texte S0** (mais rien n'interdit de procéder en 2 temps s'il y a plus de 10 années en remplaçant S0** par S1**) jusqu'au 5ème morceau et recolle tous les morceaux séparés d'un espace jusqu'à ce 5ème plus l'extension, mais on peut envisager que la chaîne S0** soit au 6ème, 7ème... en complétant les conditions"EPISODE" à 6, 7... et elle fonctionnera dans tous ces cas.

S'il y a des titres où le séparateur n'est pas le point ou bien où il n'y en a pas, la situation reste simple si ce qui suit le numéro d'épisode est constant (ici "FRENCH") à condition que le seul point soit avant l'extension ou qu'elle soit elle-même constante dans sa longueur: on va extraire tout ce qui se trouve avant "FRENCH", les 2, 3 ou 4 derniers caractères à droite (TS, MKV, H264...), remplacer les points éventuels par des espaces et recoller les morceaux.

Dans le cas contraire, le seul identifiant est S0** dont on suppose une longueur constante de 6 caractères.

Il nous faut alors chercher toute chaîne de 6 caractères commençant par S0**, l'extraire, extraire tout ce qu'il y a avant, recoller les morceaux puis l'extension: cela passe donc forcément par des jokers que l'on ne peut alors invoquer que par une instruction du type FINDSTR comme illustré par exemple ici

https://superuser.com/questions/709651/how-to-perform-wildcard-string-comparison-in-batch-file

mais alors en effet la mise au point d'une telle syntaxe deviendra suffisamment complexe pour qu'on ait plus vite fait de traiter ça à la main sauf s'il y a des centaines de fichiers à traiter; d'une manière générale, aucune batch ou via un utilitaire ne peut bien sûr réussir si on ne peut pas localiser la chaîne à extraire selon des critères spécifiques (longueur, emplacement, nom, séparateurs...)
 

0
Jeanfile82 Messages postés 64 Date d'inscription vendredi 12 avril 2013 Statut Membre Dernière intervention 30 janvier 2023 > brucine Messages postés 14749 Date d'inscription lundi 22 février 2021 Statut Membre Dernière intervention 22 mai 2024
29 janv. 2023 à 10:28

J'avais bien compris, et vu qu'il y a des points, c'est un seul bloc.

"mais alors en effet la mise au point d'une telle syntaxe deviendra suffisamment complexe pour qu'on ait plus vite fait de traiter ça à la main"

C'est un peut ça, je n'ai pas chercher à comprendre 100% de ce que vous m'avez écrit comme syntaxe mais je pense que si on cherche à pondre ça, le bénéfice n'est pas top.

Merci de votre contribution en tout cas.

0
brucine Messages postés 14749 Date d'inscription lundi 22 février 2021 Statut Membre Dernière intervention 22 mai 2024 1 909 > Jeanfile82 Messages postés 64 Date d'inscription vendredi 12 avril 2013 Statut Membre Dernière intervention 30 janvier 2023
29 janv. 2023 à 11:10

Si la syntaxe est celle que tu as évoquée (séparation par des points), il n'y a rien à comprendre, j'ai testé, ça fonctionne en l'état tant que le numéro de l'épisode est au plus le 5ème "mot".

Noter qu'il existe (plutôt que PowerName ou autre utilitaire général) des utilitaires spécifiques pour cette fonction.

Un certain nombre n'amènera rien d'autre au discours qu'une interface graphique permettant de délimiter les Regex: si ces délimiteurs ne sont pas constants, retour à la case départ.

D'autres fonctionnent en comparant le nom effectif à celui standardisé d'une base DB en ligne (Nom-Episode-Extension); je n'en connais aucun, et je ne sais pas si de telles bases de données fonctionnent "à l'international" et sont fiables.

Faire une recherche sur par exemple "windows batch rename tv shows" (ou "movies")

0
Jeanfile82 Messages postés 64 Date d'inscription vendredi 12 avril 2013 Statut Membre Dernière intervention 30 janvier 2023 > brucine Messages postés 14749 Date d'inscription lundi 22 février 2021 Statut Membre Dernière intervention 22 mai 2024
30 janv. 2023 à 10:48

Je vais voir si d'autres utilitaires sont bien pour ça sinon j’essaierais ton code à l'ocase, mais ça reste un peu fastidieux pour quelqu'un comme moi qui ne maitrise pas bien ça.

Merci de ton aide.

0
eriiic Messages postés 24571 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 19 mai 2024 7 217
29 janv. 2023 à 22:58

Bonjour,

ce logiciel gratuit devrait t'intéresser www.tvrename.com
Fait un retour sur ton expérience stp
eric


0
Jeanfile82 Messages postés 64 Date d'inscription vendredi 12 avril 2013 Statut Membre Dernière intervention 30 janvier 2023
30 janv. 2023 à 10:46

Je vais essayer ça quand j'ai un moment, merci.

C'était juste que PowerRename est compris dans un package d'utilitaire dans le Windows PowerToys mais si celui que tu me conseille est bien je m'y mettrais.

0
brucine Messages postés 14749 Date d'inscription lundi 22 février 2021 Statut Membre Dernière intervention 22 mai 2024 1 909 > Jeanfile82 Messages postés 64 Date d'inscription vendredi 12 avril 2013 Statut Membre Dernière intervention 30 janvier 2023
30 janv. 2023 à 11:05

Les utilitaires qui te sont suggérés en <8> et <9> comportent soit des Regex spécifiques à ce type de fichiers (que Power Rename n'embarque pas), soit comparent automatiquement le nom du fichier téléchargé au format standard comme noté en <8> d'une base de données et le corrigent automatiquement.

0