Visa fullständig version : Ändra filnamn på flera filer samtidigt
Finns det något program som man kan göra det med?
Gäller mest för musikfiler då en fil exempelvis kan heta: 05_runes orkester_tjoflöjt_på_logen.mp3. Jag vill ändra så den heter: Runes orkester - Tjoflöjt på logen.mp3. Är ju rätt drygt att sitta och ändra filnamnet på en fil i taget när det är många.
Skulle det kunna ordnas med ett program? Det skulle iofs bli ett rejält "filter" eftersom det inte blir samma regler över hela filnamnet. Det är ju tex bara vissa _ som ska ersättas med mellanslag osv.
Tack!
MasterChief
2007-07-12, 08:10
Att tagga rätt är något som tar tid. Det finns program som Tag&Rename (det bästa har jag för mig) men det tar ändå tid. Din specifika fråga är nog en aning komplicerad för färdiga program skulle jag tro.
Albatross
2007-07-12, 08:38
Foobar har allt. Kanske avskräckande för de som inte vill ta sig några minuter att lära sig.
Skulle det kunna ordnas med ett program? Det skulle iofs bli ett rejält "filter" eftersom det inte blir samma regler över hela filnamnet. Det är ju tex bara vissa _ som ska ersättas med mellanslag osv.
Har du något konkret exempel på vad du vill göra och vilka "regler"/filter som skall gälla?
Mycket gör att göra via vanliga Windows-kommandoradsskript.
christian
2007-07-12, 09:15
The Rename
Tack för tipsen! Ska kolla upp programmen ikväll.
Jaså det skulle kunna ordnas med Windows-kommandoradsskript? Det där har jag inte en aning om hur det funkar, så jag testar nämnda program först.
Tackar för hjälpen!
Jag använder mig av iTunes och spelar det mig ingen roll vad filerna heter :)
Jaså det skulle kunna ordnas med Windows-kommandoradsskript?
Ett exempel på hur det skulle kunna göras, i detta fall byts alla _ ut mot blanksteg i filnamnen i en viss katalog. Klistra in det i en fil med ändelse .bat eller .cmd.
************************************************
@ECHO OFF
SET kat=F:\filer\skript\test8
SET skarp=ja
SET tmp1=tmp1.txt
DIR "%kat%" /b /a-d > %tmp1%
FOR /f "tokens=*" %%a IN (%tmp1%) DO CALL :Loop %%a
GOTO :slut
:Loop
SET gammaltnamn=%*
SET nyttnamn=%gammaltnamn:_= %
IF /i "%skarp%"=="ja" REN "%kat%\%gammaltnamn%" "%nyttnamn%"
IF /i "%skarp%"=="ja" ECHO Byter: %gammaltnamn% = %nyttnamn%
IF /i NOT "%skarp%"=="ja" ECHO Visar: %gammaltnamn% = %nyttnamn%
GOTO :eof
:slut
IF EXIST %tmp1% DEL %tmp1%
************************************************
Ändra den fetmarkerade variabeln "kat" till önskad katalog.
Men som sagt, det är mycket möjligt att de färdiga programmen är lite enklare om man ej är van vid ovanstående. :)
Ett exempel på hur det skulle kunna göras, i detta fall byts alla _ ut mot blanksteg i filnamnen i en viss katalog. Klistra in det i en fil med ändelse .bat eller .cmd.
************************************************
@ECHO OFF
SET kat=F:\filer\skript\test8
SET skarp=ja
SET tmp1=tmp1.txt
DIR "%kat%" /b /a-d > %tmp1%
FOR /f "tokens=*" %%a IN (%tmp1%) DO CALL :Loop %%a
GOTO :slut
:Loop
SET gammaltnamn=%*
SET nyttnamn=%gammaltnamn:_= %
IF /i "%skarp%"=="ja" REN "%kat%\%gammaltnamn%" "%nyttnamn%"
IF /i "%skarp%"=="ja" ECHO Byter: %gammaltnamn% = %nyttnamn%
IF /i NOT "%skarp%"=="ja" ECHO Visar: %gammaltnamn% = %nyttnamn%
GOTO :eof
:slut
IF EXIST %tmp1% DEL %tmp1%
************************************************
Ändra den fetmarkerade variabeln "kat" till önskad katalog.
Men som sagt, det är mycket möjligt att de färdiga programmen är lite enklare om man ej är van vid ovanstående. :)
Jag tror jag fattar vad du menar, men inte hur jag ska göra det på egen hand :em: Det ser lite för invecklat ut för en stenåldersman som jag. Tack i alla fall!
vBulletin® v3.8.8, Copyright ©2000-2025, Jelsoft Enterprises Ltd.