Hi,
ich hab mir da ein kleines Script gebastelt, welches zunächst überprüft, wie die Bitrate eines MP3s ist. Wenn diese kleiner = X ist, wird die Datei einfach in ein festgelegtes Verzeichnis kopiert. Wenn die Bitrate jedoch grösser X ist, wird das MP3 an lame weitergereicht und dann auf 128KBit recodiert. Brauch ich, damit mein USB MP3 Stick mit 128 MB auch ausreichend Platz bietet und weil er Probleme mit MP3s > 196KBit hat. Naja.. das funktioniert auch soweit ganz gut.
Dem Script gibt man den Dateinamen mit und im Script wird dieser dann eben mit der Variable $1 weiterverarbeitet.
Das sieht dann in etwa so aus:
lame -b 128 "$1" /mnt/usbstick/"$1"
So... nun zu meinem Problem:
Wenn ich also in meinem MP3 Verzeichnis bin und dort das Script starte und den Dateinamen ohne Pfadangabe mitgebe, dann funktioniert das auch wunderbar. Wenn ich jedoch z.B. in meinem Home bin und das Script ausführe und den ganzen Pfad zum MP3 mit angebe, dann ist $1 natürlich auch mit dem kompletten Pfad belegt. Und dann versucht lame das eben folgendermassen abzuspeichern:
/mnt/usbstick//pfad/zum/mp3/lied.mp3
Und das is natürlich Blödsinn und geht auch nicht. Wie kann ich denn nun bewerkstelligen, dass nur der Dateiname verwendet wird? Ich denke mal, mir da was mit awk oder so zusammenzuwurschteln düfte etwas überzogen sein (im Sinne von: "verwende nur, was nach dem letzten / kommt") da es ja bestimmt eine einfachere Möglichkeit gibt.
Wer weiss Rat?
Lesezeichen