[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: rename filenames



Frans van Berckel schreef op 2013-03-25 17:07:
Wouter Verhelst schreef op 2013-03-25 16:50:
On 25-03-13 16:42, Frans van Berckel wrote:
Wouter Verhelst schreef op 2013-03-25 15:26:

#!/bin/bash
while [ ! -z "$1" ]
do
  NAME="$1"
  shift
  BASE="${NAME%.*}"
  EXT="${NAME#$BASE}"
  BASE="$(echo "$BASE" | sed -e 's/ *$//')"
  mv "$NAME" "${BASE}.${EXT}"
done
Je script samen met onderstaande werkt. Maar ik krijg alleen wel twee
punten bij de extensie?
find . -name "* .*" -exec extra-spaces.sh {} \;
Dat kan ook, maar -print0 | xargs -0 forkt minder (dus is sneller).

Tino Rossi - Vieni Vieni .mp3 wordt nu Tino Rossi - Vieni Vieni..mp3
Oeps, mijn fout.
mv "$NAME" "${BASE}${EXT}"
zou beter moeten lukken.

Super, heb tevens # echo "Renaming: ${BASE}${EXT}" boven de mv gezet.

*my fingers are crossed now for the big one*

find . -name "* .*" -print0 | xargs -0  extra-spaces.sh

Test 1, 2 & 3, met een directory met ongeveer 30 matches ...

Renaming: Viviana/Engelstalig/Sophie B Hawkins - Right beside you.mp3
Renaming: Viviana/Engelstalig/Tina Charles - I love to love.mp3
mv: `Viviana/Engelstalig/Smokie - Naked love (baby love me ...).mp3' and `Viviana/Engelstalig/Smokie - Naked love (baby love me ...).mp3' are the same file

Goed daar komen we wel overheen, denk ik dan, toch? Het zou wel handig zijn deze te loggen.

Maar dan, de volgende krijg ik 4 keer.

mv: cannot move `Viviana/Engelstalig/[Dr.Motte & West barn] Sunshine .mp3' to `Viviana/Engelstalig/[Dr.Motte & West barn] SunshineViviana/Engelstalig/[Dr.Motte & West barn] Sunshine .mp3': No such file or directory

Wat opvalt is de spatie voor .mp3. Ls geeft nu ..

ls "Viviana/Engelstalig/[Dr.Motte & West barn] Sunshine .mp3"
Viviana/Engelstalig/[Dr.Motte & West barn] Sunshine .mp3

Met vriendelijke groet,


Frans van Berckel


Reply to: