Renommer les dossiers et fichiers [Résolu/Fermé]

Signaler
Messages postés
2243
Date d'inscription
samedi 25 octobre 2014
Statut
Membre
Dernière intervention
22 février 2020
-
Messages postés
38258
Date d'inscription
mercredi 11 avril 2007
Statut
Modérateur
Dernière intervention
4 juin 2020
-
Bonjour à tous et toutes

Je cherche à renommer certains des dossiers et des fichiers.

J'arrive à récupérer la liste de tous mes fichiers et dossiers dans un fichiers résult.txt
for /f "delims=" %%a In ('dir /b/ad/s/a  "C:\Users\Desktop\fichiers" ') Do (
  echo %%a >>resultat.txt
)


Pour changer les espaces par un tiret pas de soucis.
Voilà le code
@echo off
setlocal enabledelayedexpansion

 for /f "delims=" %%a In ('dir /b/a-d/s/a  "C:\Users\mougi\Desktop\dossier_sous_dossier_fichier" ') Do (
     set "$File=%%~nxa"
     set "$File=!$File: =-!"
     ren "%%a" "!$File!"
    )


Mais c'est pour remplacer les é è ê par des e que je n'arrive pas.

Je vous remercie poour l'aide pour vous pourrez m'apporter.

1 réponse

Messages postés
18126
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
4 juin 2020
4 853
hello
pour que DOS reconnaisse les car. étendus, utiliser
chcp 1252
Messages postés
18126
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
4 juin 2020
4 853
à mettre au début du script
chcp 1252
for /f "delims=" %%a In ('dir /b/a-d/s/a "C:\Users\mougi\Desktop\dossier_sous_dossier_fic
hier" ') Do (
set "$File=%%~nxa"
set "$File=!$File:é=e!"
ren "%%a" "!$File!"
)
Messages postés
2243
Date d'inscription
samedi 25 octobre 2014
Statut
Membre
Dernière intervention
22 février 2020
1 419 >
Messages postés
18126
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
4 juin 2020

Bonjour

J'ai essayé ce code.
Ça ne marche pas et il y a quelque chose de bizarre.
Une fois que le script a été exécuté, si j'ouvre le document .bat j'ai ceci
chcp 1252
for /f "delims=" %%a In ('dir /b/a-d/s/a  "C:\Users\mougi\Desktop\dossier_sous_dossier_fichier" ') Do (
    set "$File=%%~nxa"
     set "$File=!$File:?=e!"
     ren "%%a" "!$File!"
    )


set "$File=!$File:é=e!" a été remplacé par set "$File=!$File:?=e!"
Messages postés
18126
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
4 juin 2020
4 853
manipuler les accents en DOS, c'est pourri
il faut faire attention à quel éditeur texte on utiise, quelles commandes DOS après chcp, etc
C:> dir > ééé
C:> dir /b
ééé
C:> chcp 1252
Page de codes activeá: 1252
C:> dir /b
ÚÚÚ
C:> chcp 850
Page de codes active : 850
C:> dir /b
ééé
Messages postés
2243
Date d'inscription
samedi 25 octobre 2014
Statut
Membre
Dernière intervention
22 février 2020
1 419
Merci

:-)
Messages postés
38258
Date d'inscription
mercredi 11 avril 2007
Statut
Modérateur
Dernière intervention
4 juin 2020
7 521 >
Messages postés
2243
Date d'inscription
samedi 25 octobre 2014
Statut
Membre
Dernière intervention
22 février 2020