• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

Leerzeichen rekursiv aus Dateinamen entfernen/umwandeln?

gm2601

Advanced Hacker
Hallo Gurus,

Gibt es eine Möglichkeit aus allen Dateinamnen innterhalb eines Directories die Leerzeichen rekursiv zu entfernen bzw. umzuwandeln?
Die Sufu gibt zwar mehrere Tipps für ein Verzeichnis, aber ich suche etwas für einen ganzen Pfad und ich habe von shellscripts keine Ahnung,dh ein gui -zB ~/MP3 anklicken, Änderung definieren...fertig- wäre mir am liebsten.
 
Hallo

Code:
find /dein/Ordner -name "* *" | while read a ; do mv ${a} ${a//\ /_} ; done

Je nachdem wo du die Befehlskette einsetzen willst kann es nötig sein ein Script drumherum zu bauen.

Ausserdem: wenn du Leerzeichen auch in den Pfaden hast, dann hagelt es erstmal Fehlermeldungen, die aber meist beim dritten Durchlauf verschwunden sind, wenn dann endlich alle Leerzeichen gefüllt sind.

Gruß Peter
 
OP
gm2601

gm2601

Advanced Hacker
Unter /MP3/MP3 befindet sich das Dir 'Klassik' (Ist kurz, hat keine subdirs mehr)
Code:
guenter@emil2:/MP3/MP3> find Klassik -name "* *" | while read a ; do mv ${a} ${a//\ /_} ; done       
mv: angegebenes Ziel „Klassik/Luciano_Pavarotti_-_Verdi,_Aida,_Celeste_Aida.mp3“ ist kein Verzeichnis
.....
Danke Dir!
Seit ich dein cmd noch um Gänsebeine um "${a}" "${a//\ /_}" bereicherte meckert es nicht mehr wegen der Verzeichnisse (Bin ganz stolz auf meine Idee :wink: )
 
Ja stimmt :) die Gansefüsschen. Das sind so die Kleinen aber wichtigen Dinge , die man in der Eile vergisst. Aber bist ja gottseidank selber drauf gekommen ;-)

Willst übrigens diese _-_ auch loswerden?
Code:
find /dein/Ordner -name "*_-_*" | while read a ; do mv "${a}" "${a//_-_/-}" ; done
Hier könnte man natürlich die Gänsefüsschen weglassen, weil man die nur wegen der Leerzeichen braucht.


Gruß Peter
 
OP
gm2601

gm2601

Advanced Hacker
Danke und Gruß nach Oberbayern! (WB/Inn unterstellt)

Deine Gänsebein-einfassungen haben nun im Gegensatz zu meinen die Ausgabe von Fehlermeldungen aufgegeben und alle Files richtig umbenannt. Den Anspruch shellsyntax zu verstehen habe ich längst aufgegeben. :wink:
"SuSI ? Find ich gut"<---ich auch (GSXR) :D
 
Hallo

Ich habe damit meine Fortschritte gemacht:
http://www.buch24.de/1203445263-105110919/shopdirekt.cgi?id=3688342&p=3&t=&h=&kid=0&klid=2&sid=1

Dieses Buch führt einem Schritt für Schritt an die Thematik ran und während es beschreibt wodurch sich die verschiedenen Shells voneinander unterscheiden, begreift man immer mehr was typisch Bourn-Shell-Syntax ist.

Gruß Peter
 
Oben