Création .bat

Résolu
Man478 Messages postés 6 Date d'inscription   Statut Membre Dernière intervention   -  
barnabe0057 Messages postés 14455 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour, je suis très novice je cherche quoi écrire pour créer un .bat pour faire ceci:
J’ai 17k fichiers PDF que je dois renommer et je veux pas faire cela un à la fois. Le noms des PDF actuellement est un séquencé de 6 chiffre variable que je dois conserver. Je veux ajouter un préfixe et un suffixe qui sera toujours le même.
Nom du Fichier PDF actuel : 123456
Nom rechercher au final : O19-123456-99
Ou se trouve mes fichier à renommer: Documents\Test

J’ai beau chercher je trouve pas tout ce que j’ai de besoin.

Merci à l’avance de votre aide je vais sauver énormément de temps, bien hâte de lire vos réponse.
A voir également:

4 réponses

barnabe0057 Messages postés 14455 Date d'inscription   Statut Contributeur Dernière intervention   4 925
 
Bonjour,

Tu peux essayer ça :

@echo off
color 0A
ver | find "10.0." >nul && chcp 65001 >nul || chcp 28591 >nul
setlocal enableextensions disabledelayedexpansion

cd %USERPROFILE%\Documents\Test

for %%A in (*.pdf) do (
echo %%~nA | findstr /r "\<[0-9][0-9][0-9][0-9][0-9][0-9]\>" >nul && ren "%%~fA" "O19-%%~nA-99%%~xA"
)

pause
exit


Je n'ai pas testé mais ça devrait le faire.

Si le script est trop lent à cause du grand nombre de fichiers, j'ai un autre script à proposer, plutôt une légère variation.


0
Man478 Messages postés 6 Date d'inscription   Statut Membre Dernière intervention  
 
Je teste et je te reviens
0
Man478 Messages postés 6 Date d'inscription   Statut Membre Dernière intervention  
 
Bonjour banabe0057 me re voilà regarde le message que j’ai c’est quoi le problème.
?

La syntaxe du nom de fichier, de répertoire ou de volume est incorrecte.

voici la ligne que j’ai: cd %USERPROFIL%\X:\SECUR3\ML\Test renommage

Tout le reste j’ai copier\ coller la formalité que tu m’as envoyer.
0
barnabe0057 Messages postés 14455 Date d'inscription   Statut Contributeur Dernière intervention   4 925
 
Salut, je vois plusieurs problèmes liés entre eux :

1) tu as mal orthographié la variable %USERPROFILE%

2) le chemin que tu indiques ne peut pas exister car un nom de dossier ne peut pas contenir le symbole :

3) le X: me fait penser à une lettre de lecteur, est-ce qu'il s'agit d'une clé usb ou bien d'un lecteur réseau ?

Essaie comme ça :

@echo off
color 0A
ver | find "10.0." >nul && chcp 65001 >nul || chcp 28591 >nul
setlocal enableextensions disabledelayedexpansion

cd /d X:\SECUR3\ML\Test renommage

for %%A in (*.pdf) do (
 echo %%~nA | findstr /r "\<[0-9][0-9][0-9][0-9][0-9][0-9]\>" >nul && ren "%%~fA" "O19-%%~nA-99%%~xA"
)

pause
exit
0
Man478 Messages postés 6 Date d'inscription   Statut Membre Dernière intervention  
 
Wow de WoW ! Un énorme merci cela est inimaginable le temps je je vais sauver. Un gros gros merci.
0
man478
 
Bonjour, j’ai encore besoin de votre aide. Je cherche la formule pour un .bat. Je veux enlever une partie de nomenclature de mes ficher FDP. Voici ce que j’ai 001-S62-123456-99. C’est le 001 qui est un chiffre variable mais qui a toujours 4 position que je veux enlever pour avoir en final S62-123456-99. Toute la séquence à partir du S62-123456-99 doit être conservé. Merci à l’avance de votre aide
0
barnabe0057 Messages postés 14455 Date d'inscription   Statut Contributeur Dernière intervention   4 925
 
Bonjour,

Une boucle FOR fera l'affaire :

for /f "tokens=1* delims=-" %%A in ('2^>nul dir /b /a-d *.pdf') do ren "%%A-%%B" "%%B"


A tester !
0
Man478 Messages postés 6 Date d'inscription   Statut Membre Dernière intervention   > barnabe0057 Messages postés 14455 Date d'inscription   Statut Contributeur Dernière intervention  
 
Bonjour barnabe0057, j’ai un message qui dit le fichier spécifié est introuvable. Pourtant j’ai utilisé le même dossier pour mon autre bat. Mon PDF a le nom 001-O19-123456-99. Le 001 augmente 002, 003 etc. Le O19, change d’un fichier à l’autre il pourrait être S47, O93, mais il est toujours composé d’une lettre suivie de deux chiffre.Le 123456, est un numéro qui change mais qui a toujours 6 chiffres.

Merci encore de ton aide.

J’ai mis:
@echo off

CD /d X:\SECUR3\ML\Test renommage

Ici j’ai ta formule ci-haut

Pause
Exit
0
barnabe0057 Messages postés 14455 Date d'inscription   Statut Contributeur Dernière intervention   4 925 > Man478 Messages postés 6 Date d'inscription   Statut Membre Dernière intervention  
 
@echo off
color 0A
ver | find "10.0." >nul && chcp 65001 >nul || chcp 28591 >nul
setlocal enableextensions disabledelayedexpansion

cd /d X:\SECUR3\ML\Test renommage

for /f "tokens=1* delims=-" %%A in ('2^>nul dir /b /a-d *.pdf') do echo %%A-%%B

pause
exit


Est-ce que ce code affiche bien la liste des fichiers .pdf ?
0
Man478 Messages postés 6 Date d'inscription   Statut Membre Dernière intervention   > barnabe0057 Messages postés 14455 Date d'inscription   Statut Contributeur Dernière intervention  
 
Merci de m’aider encore. Quand je double clic le code.exe affiche mes fichier mais quand je fau enter pour continuer le 001,002 ne s’efface pas.
0
barnabe0057 Messages postés 14455 Date d'inscription   Statut Contributeur Dernière intervention   4 925 > Man478 Messages postés 6 Date d'inscription   Statut Membre Dernière intervention  
 
Oui c'est normal c'est juste un test pour essayer de trouver ce qui ne va pas.
0