Avatar billede thomaslp Nybegynder
07. december 2004 - 18:16 Der er 1 kommentar

replace character i fil og mappenavne

Hej,
findes der en dos kommando eller lign. der sweeper en mappe og alle undermapper igennem og replacer en character i alle fil- og mappenavne med en anden. F.eks. skal alle filer og mapper med character _ erstattes med - således at fil_navn bliver fil fil-navn.

Jeg ved at det kan lade sig gøre i UNIX
Avatar billede bertelbrander Novice
07. december 2004 - 20:24 #1
Du burde kunne bruge følgende:

@echo off
setlocal

for /F "tokens=*" %%I in ('dir /S /B *') do call :Process "%%I"
goto :eof

:Process
set NewName=%~1
set NewName=%NewName:_=-%
if "%NewName%"==%1 goto :eof
echo ren %1 "%NewName%"

Hvis du kører det som det er, vil det udskrive kommandoerne, hvis det ser rigtigt ud fjerner du ordet echo i sidste linie, så udfører det kommandoen.

Du kan ændre 'dir /S /B *' til f.ex: 'dir /S /B C:\whatever\*.pop' så vil det køre på alle .pop filer i mappen c:\whatever og alle dens undermapper. Du kan fjerne /S hvis den kun skal køre i mappen.

Det vil nok være en god ide at lave en backup inden.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester