PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : leerzeichen in dateinamen *hmpf



blackbird
02.08.00, 21:57
hi!

ich hab mal wieder ein nettes problem hier.. und zwar hab ich auf meinem rechner ein script liegen, welches alle wav´s aus einem bestimmten verzeichnis zu mp3´s komprimiert. soweit sogut. die dateien landen normalerweise über samba in dem verzeichniss. leider gibts doch immer wieder leute, die´s einfach nicht raffen dass leerzeichen in dateinamen nichts zu suchen haben *hmpf*. die leerzeichen machen meiner for schleife zu schaffen (for i in * do irgendwas). wenn da jetzt eine datei "name interpret.wav" heisst, hat i zuerst den wert name und dann interpret.wav http://www.linuxforen.de/ubb/frown.gif hat da jemand ne idee wie man dem herr werden könnte? bzw gibts vielleicht ne einstellung für samba, dass der leerzeichen in dateinamen automatisch in underscore´s umwandelt? ( _ ) wär richtig schick http://www.linuxforen.de/ubb/wink.gif

vielen dank schonmal!

grüsse blackbird

03.08.00, 08:48
hi!

Versuch doch einfach mal den Dateinamen in Anfürungszeichen zu setzen, so dass er als ein Begriff in deinem Script gilt.

Übrigens könntest du noch mitteilen in welcher Scriptsprache du das Script verfasst hast.

grüsse Sven

Pingu
03.08.00, 09:32
Hi Blackbird,

ich weiß die Antwort hilft die jetzt sicherlich nicht groß weiter, aber sicher es ist möglich, daß bei Dateinamen aus einem Leerzeichen ein Underline wird. Nur jetzt kommts: Du müßtest dies wohl selber in den Quellcode einbauen und dann neu übersetzen.
Z.Zt kann ich Dir da leider nicht weiterhelfen, da ich beruflich so überlastet bin, daß ich noch nicht einmal mit meinen eigenen Problemen voran komme.

Einer der Softwareleute in meiner alten Firma hat nämlich auch so alle möglichen Erweiterungen in Samba eingebaut, z.B. daß er in einer Liste hinterlegen konnte für welche Dateiendungen eine Konvertierung durchgeführt werden soll.
Du könntest z.B. auch eine Konfiguration, wie beim inetd einbauen, nur daß hier als Referenz nicht die Portnummer sondern die Dateiendung dient. Dann könnte man z.B. festlegen, daß wenn einer 'n wav Datei speichern will Samba automatisch die Datei in mp3 konvertiert und speichert. Somit lägen dann überhaupt keine wav's mehr auf dem Rechner.
Aber wie gesagt leider hab ich z.Zt. keine Zeit für solche Spielchen.

Gruß

              -= Pingu =-

blackbird
03.08.00, 17:39
hi sven2!

mein script ist n einfaches bash-script..
die idee mit den "" ist mir auch schon gekommen, allerdings wird das nicht klappen. baut alles auf folgender schleife auf:<pre>for i in *
do
mp3-kompriemierungskram
done</pre>
solange nur "normale" dateinamen, also ohne leerzeichen, vorhanden sind, hat i nach und nach den wert jedes dateinamens und alles klappt.
wenn jetzt aber da auch zb die datei "lied interpret.wav" im verzeichnis liegt, hat i den wert "lied" und durchläuft damit die schleife und anschliessend den wert "interpret" und durchläuft dann damit wieder die schleife. leider klappt beides nicht da es die dateien nicht gibt http://www.linuxforen.de/ubb/frown.gif
und gross mit qoutings kann ich da IMHO auch nicht arbeiten, da die fehler ja nicht erst bei der ersetzung der variable entstehen, sondern schon beim bilden des inhaltes.. ich müsste mir also was überlegen wie ich bereits da mit qoutings arbeiten kann. vielleicht fällt mir da ja noch was ein http://www.linuxforen.de/ubb/wink.gif

zu pingu:
hört sich alles recht lecker an, aber leider hatte ich grad mal 3 wochen c/c++ kurs und da sind wir bis über einfaches c nicht hinausgekommen, drum wird das wohl leider nichts http://www.linuxforen.de/ubb/frown.gif

naja mir wird schonnoch ne lösung einfallen, hoff ich doch mal http://www.linuxforen.de/ubb/wink.gif

grüsse blackbird