Bonjour,
Je souhaiterai renommer plusieurs répertoires qui sont par défaut en majuscule.
Auriez-vous un petit exemple s'il vous plaît ?
Merci![]()
Bonjour,
Je souhaiterai renommer plusieurs répertoires qui sont par défaut en majuscule.
Auriez-vous un petit exemple s'il vous plaît ?
Merci![]()
Une possibilité est d'utiliser un VBS qu'on appellera Lcase.vbs :
Ensuite tu crée le script suivant, tu mets ton chemin cible pour la variable TargetPath, puis tu exécute le script qui passera tout repertoire dans l'arborescence cible en minuscule.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 On error resume Next MyVar=WScript.Arguments.Item(0) If MyVar="" Then WScript.Echo "error" : WScript.Quit 1 MyVar=lcase(Myvar) : WScript.Echo MyVar : WScript.Quit 0
J'ai pas trouvé comment jouer avec la case en batch, mais si quelqu'un trouve, il est encore possible d'améliorer ce script en virant l'appel à la fonction VBS.
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 off& SETLOCAL ENABLEDELAYEDEXPANSION& cd %~dp0 rem provide here the full target path you desire and run the script. set TargetPath=C:\Documents and Settings\Administrateur\Bureau\Kkiki if not exist "!TargetPath!" (echo Warning, path not exist& exit 1) for /f "delims=" %%i in ('dir /b /s "!TargetPath!"') do (Call :test "%%i") for /f "delims=" %%i in (list.txt) do ( set OldDirName=%%i echo Old dir name : !OldDirName! for /f "delims=" %%i in ("!OldDirName!") do ((cscript //nologo Lcase.vbs "%%~ni")>tmp.txt) for /f "delims=" %%i in (tmp.txt) do (set NewDirName=%%~ni) echo New dir name : !NewDirName! ren "!OldDirName!" "!NewDirName!" ) del /f /q tmp.txt >nul del /f /q list.txt >nul echo End of the script & pause :test rem The data is a directory ? set DataType=%~a1 Set DataType=!DataType:~0,1! echo !DataType! | findstr d >nul 2>&1 if !errorlevel! NEQ 1 (echo %~1>>list.txt) exit /b
Partager