Van http://windowsitpro.com/articles/index.cfm?articleid=81612 :
Met alleen standaardcommando’s heb ik LwrCase.bat en LwrCase_Folder.bat gescript, om een bestandsnaam te hernoemen naar kleine letters, of om alle bestandsnamen in een map te hernoemen naar kleine letters.
Om een bestandsnaam te hernoemen naar kleine letters, gebruikt u:
[call] LwrCase FullyQualifiedFileName
Waarbij FullyQualifiedFileName de volledig gekwalificeerde bestandsnaam is die hernoemd moet worden.
Om alle bestandsnamen in een map te hernoemen, gebruik je:
[call] LwrCase_Folder FullyQualifiedDirectoryName [/S]
waarbij FullyQualifiedDirectoryName het volledig gekwalificeerde mappad is, en /S een optionele parameter die ook de bestandsnamen in alle submappen hernoemt.
OPMERKING: LwrCase.bat maakt gebruik van de /L-schakelaar van het DIR-commando, waarmee namen in kleine letters worden teruggegeven.
LwrCase.bat bevat:
@echo off
if {%1}=={} @echo Syntax: LwrCase FullyQualifiedFileName&goto :EOF
if not exist %1 @echo LwrCase - %1 NOT found.&goto :EOF
setlocal
for /f "Tokens=*" %%a in ('@echo %~a1') do (
set file=%%a
)
if /i "%file:~0,1%" EQU "d" @echo LwrCase - %1 is NOT a file.&endlocal&goto :EOF
for /f "Tokens=*" %%f in ('dir %1 /L /b /a /a-d') do (
Rename %1 "%%f"
)
endlocal
LwrCase_Folder.bat bevat:
@echo off
if {%1}=={} @echo Syntax: LwrCase_Folder FullyQualifiedDirectoryName&goto :EOF
if not exist %1 @echo LwrCase_Folder - %1 NOT found.&goto :EOF
setlocal
for /f "Tokens=*" %%a in ('@echo %~a1') do (
set folder=%%a
)
if /i "%folder:~0,1%" NEQ "d" @echo LwrCase_Folder - %1 is NOT a folder.&endlocal&goto :EOF
pushd %1
set sw=/B /A /A-D
if /i {%2}=={/S} set sw=%sw% %2
for /f "Tokens=*" %%f in ('dir %sw%') do (
call LwrCase "%%f"
)
popd
endlocal