Bonjour,

Je débute en Batch et je rencontre mes premiers problèmes. Je souhaiterai que mon script parcourt l'arborescence de tout un dossier et renomme chaque dossier/fichier contenant un 'é' ou 'è' en 'e'.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
@echo on 

set source=C:\Backup

IF EXIST fichier.txt DEL fichier.txt

dir %source% /A /B /S > %source%\fichier.txt

rem /a affiche tous les fichiers
rem /s Affiche les fichiers d'un repertoire et de ses sous-repertoires.
rem /b Utilise le format abrege (noms des fichiers).

cd %source%
setlocal enabledelayedexpansion
for /R %%j in (*.*) do (
set filename=%%~nj

rem ALT+0130 pour é
set filename=!filename:ALT+0130=e!

rem ALT+0138 pour è
set filename=!filename:ALT+0138=e!
IF NOT "!filename!"=="%%~nj" ren "%%j" "!filename!%%~xj"
)

pause
J'ai récupéré la 2eme partie du script sur ce forum mais ça ne fonctionne pas. Je pense que cette ligne dir %source% /A /B /S > %source%\fichier.txt doit se retrouver dans la 2eme partie 'fin je vois pas trop.
Lorsque je lance le script mon fichier.txt est bien créé et contient toute l'arbo de backup par contre avant de lancer le script j'avais C:\Backup\data\March‚s\é.txt qui s'est renommé en C:\Backup\data\March‚s\!filename!.txt

C:\Backup\data
C:\Backup\fichier.txt
C:\Backup\script.bat
C:\Backup\data\March‚s
C:\Backup\data\March‚s\!filename!.txt
C:\Backup\data\March‚s\Š
C:\Backup\Edata\March‚s\‚.txt
Si quelqu'un peut m'aider et m'expliquer svp
Merci