Jochen van Geldern wrote:
Hallo,
Ich habe mir ein Script geschieben mit den ich MP3's Convertiere
(Ändern der Sample-Rate wegen ein HW-MP3-Player).
Das Wandeln klappt auch so. Nur habe ich ein Problem die Dateien mit
ID3-Tags zu versehen.
Die Ursprungsdateien haben Tags, die ich unverändert in die Zieldatei
übernehmen will.
Hier der Script:
#!/bin/sh
myid3()
{
.
.
.
mkdir
"$1.new"
dir=`pwd`
cd "$1"
for i in *; do
cd "$dir"
cd "$1"
id3str=`myid3 "$i"`
lame -m j -V 4 --resample 44.1 "$i" -o "../$1.new/$i"
cd "../$1.new"
$id3str
cd ..
done
id3: fopen: Hard: No such file or directory
id3:
fopen: Day's: No such file or directory
id3: fopen: Night": No such file or directory
id3: fopen: Beatles": No such file or directory
...
Meine Frage: Wieso Zerlegt der Script den Argumente-String von id3 so
komisch?
Nun ich konnte das Problem lösen:
mkdir "$1.new"
dir=`pwd`
cd "$1"
for i in *; do
cd "$dir"
cd "$1"
id3str=`tempfile -d /tmp`
myid3 "$i" >$id3str
lame -m j -V 4 --resample 44.1 "$i" -o "../$1.new/$i"
cd "../$1.new"
. $id3str
cd ..
rm -f $id3str
done
Ich jetzt den id3-Befehl in eigenen Datei geschrieben (tempfile) die
ich aufrufe und hinterher lösche.
So klappt es. Ich weiß nicht ob es eine elegantere Lösung gibt oder?
--
Gruß Jochen
|