[lug-ld] Problem mit Dateinnamen
Christian Boltz
lug-ld at cboltz.de
Sa Apr 18 16:21:24 CEST 2009
Hallo Patrick, hallo Leute,
Am Samstag, 18. April 2009 schrieb Patrick Clemens:
> mir ist ein dezenter Fehler passiert. Ich habe von einem Windows
> Rechner via SSH Datein auf meinen Linux Rechner übertragen.
>
> Dabei waren aiuch Verzeichnisse die Sonderzeichen hatten (äöü) und
> auch einige Bilder die diese Zeichen haben.
> Beispiel:
>
> Schlupp Vom gr?nen Stern
>
> ich kann ins Verzeichnis wechseln und die daten lesen aber ich kann
> es nicht kopiern oder umbennen( umbennen würde mich vollkommen
> reichen für dieweitere Verwendung)
>
> Weisjemand wie ich diese Sonderzeichen behandeln muß damit ich sie
> loswerde?
Von welcher Menge an Dateien reden wir hier? (Sprich: ist manuelles
Umbenennen eine Option oder sind es dafür zu viele Dateien?)
Erstmal der Hinweis: mit ls -b bekommst Du immerhin raus, um welche
komischen Zeichen es sich handelt - sie werden dann in escapter Form
angezeigt.
Quasi-automatisch geht das Umbenennen, wenn Du rausbekommst, mit welchem
Zeichensatz die Dateinamen codiert sind und welchen Zeichensatz Du
unter Linux verwendest. Nähere Infos: man convmv
Mit etwas Glück hilft ls -N --show-control-chars | file - beim
Ermitteln des Zeichensatzes.
Händisches Umbenennen sollte mit Hilfe der Tab-Completion in der Shell
gehen, wenn die Dateinamen einigermaßen eindeutig sind: Den ersten Teil
des Dateinamens tippen, dann die Sonderzeichen mit der Tab-Taste
vervollständigen lassen ;-) (dann kümmert sich die Shell automatisch
ums richtige Escaping) und den Ziel-Dateinamen tippen.
Einfaches Beispiel: Gegeben sei eine Datei namens foo'bar"baz
Du tippst
mv foo<tab>
und schon sollte
mv foo\'bar\"baz
dastehen. Jetzt noch ergänzen zu
mv foo\'bar\"baz foo_bar_baz
einmal Enter drücken - fertig.
Gruß
Christian Boltz
--
wer Windows in irgendeiner Form verwendet (ausser
als abschreckendes Beispiel) ist selbst schuld.
[Carsten Becher in suse-linux]