Umlaute Knoppix
- Ersteller lordg2009
- Erstellt am
GrandTheft
Lt. Commander
- Registriert
- Dez. 2008
- Beiträge
- 1.276
Hi,
Klingt für mich als wenn die locale nicht richtig gesetzt wäre.
Umbenennen ist natürlich das einfachste, aber natürlich keine Lösung für das Problem, lediglich ein workaround - es funktioniert aber und wird vielfach so gemacht, damit man sich mit dem Thema locale setzen etc. nicht beschäftigen muss. Falls Du es so machen willst- es gibt fertige Skripte dafür, die die Platte durchsuchen, und Dir beim Umbenennen helfen.
Grüße
gt
Klingt für mich als wenn die locale nicht richtig gesetzt wäre.
Umbenennen ist natürlich das einfachste, aber natürlich keine Lösung für das Problem, lediglich ein workaround - es funktioniert aber und wird vielfach so gemacht, damit man sich mit dem Thema locale setzen etc. nicht beschäftigen muss. Falls Du es so machen willst- es gibt fertige Skripte dafür, die die Platte durchsuchen, und Dir beim Umbenennen helfen.
Grüße
gt
Das ist natürlich das einfachste. Benennen die scripte gleich um, oder zeigen sie mir nur an, was umbenannt werden muss? Am Ende des Kopiervorgangs spuckt mir Knoppix ja eine Liste aus, mit allen Dateien samt den Verzeichnissen, die es nicht kopieren konnte, ränderte ich das einfach in ein .txt kopieren und die Liste abarbeiten.
Danke schön
Hi, bräuchte jetzt doch dieses Script. Benennt das selbst um, wie z.B. Umlaute in ae, oe, ue oder auch einfach nur löschen. Wäre für einen Download Link dankbar.
Danke schön
Ergänzung ()
Hi, bräuchte jetzt doch dieses Script. Benennt das selbst um, wie z.B. Umlaute in ae, oe, ue oder auch einfach nur löschen. Wäre für einen Download Link dankbar.
GrandTheft
Lt. Commander
- Registriert
- Dez. 2008
- Beiträge
- 1.276
Das erste klingt gut, ich poste aber noch mal, da ich Angst habe, was kaputt zu machen.
Würde
rename 'ä/ü/ö' /media/ftp
alle Umlaute in diesem Verzeichnis löschen?
Ich raffs nicht, habe mir ein Testverzeichnis erstellt, mit Dateien zum umbenennen, hat nicht geklappt.
Würde
rename 'ä/ü/ö' /media/ftp
alle Umlaute in diesem Verzeichnis löschen?
Ergänzung ()
Ich raffs nicht, habe mir ein Testverzeichnis erstellt, mit Dateien zum umbenennen, hat nicht geklappt.
GrandTheft
Lt. Commander
- Registriert
- Dez. 2008
- Beiträge
- 1.276
gut, mach das nochmal. Mit
kannst Du Dateien erstellen, mach Dir ein paar mit Umlauten.
Dann probier's mal mit
(ich glaube Du hattest das "s" vergessen, steht für strip. Strip ist immer gut.
)
Ok, wenn das läuft, weißt Du schonmal bescheid, wie es in einem Verzeichnis geht.
Dann brauchst Du noch eine Möglichkeit, alle Dateien mit entsprechenden Umlauten zu finden. Das kannst Du so machen, dass Du im Verzeichnis, unter dem sich irgendwo die Dateien mit Umlauten befinden, eingibst
find ist immer rekursiv und findet in dieser Form alle Dateien und Verzeichnisse, in denen ein 'ü' vorkommt.
Wenn Du die Ausgabe überprüft hast, gibst Du
ein.
die pipe | übergibt die Ausgabe des ersten Befehls an den zweiten, xargs transformiert die erhaltene Liste (Dateien mit 'ü') in ein Argument für rename und was danach kommt.
Wenn Du noch Fragen hast, gib bescheid.
gt
PS: Wenn Du das ganze noch in eine Datei schreibst, hast Du Dein Skript. Mit -iname suchst Du case-insensitiv. Und außer ü gibts ja nur ö und ä.
Code:
touch FILENAME
kannst Du Dateien erstellen, mach Dir ein paar mit Umlauten.
Dann probier's mal mit
Code:
rename 's/ü/ue/' *
(ich glaube Du hattest das "s" vergessen, steht für strip. Strip ist immer gut.

Ok, wenn das läuft, weißt Du schonmal bescheid, wie es in einem Verzeichnis geht.
Dann brauchst Du noch eine Möglichkeit, alle Dateien mit entsprechenden Umlauten zu finden. Das kannst Du so machen, dass Du im Verzeichnis, unter dem sich irgendwo die Dateien mit Umlauten befinden, eingibst
Code:
find -name *ü*
find ist immer rekursiv und findet in dieser Form alle Dateien und Verzeichnisse, in denen ein 'ü' vorkommt.
Wenn Du die Ausgabe überprüft hast, gibst Du
Code:
find -name *ü* | xargs rename 's/ü/ue/' *
die pipe | übergibt die Ausgabe des ersten Befehls an den zweiten, xargs transformiert die erhaltene Liste (Dateien mit 'ü') in ein Argument für rename und was danach kommt.
Wenn Du noch Fragen hast, gib bescheid.
gt
PS: Wenn Du das ganze noch in eine Datei schreibst, hast Du Dein Skript. Mit -iname suchst Du case-insensitiv. Und außer ü gibts ja nur ö und ä.

Zuletzt bearbeitet:
GrandTheft
Lt. Commander
- Registriert
- Dez. 2008
- Beiträge
- 1.276
Ja, das fände ich übrigens auch besser @locale wahrscheinlich. Aber er hatte ja geschrieben, dass er sie umbenennen will, was zwecks Zeitersparnis gegen die fiese locale auch gängige Praxis ist. Locale verstellen manchemal gar nicht gut. 
gt

gt
Werde das mal ausrobieren. Fehlermeldung ist:
Ungültiges oder unvollständiges Multi-Byte oder Wide-Zeichen
Irgendwas von:
Unzulässiges oder falsches Multi-Byte oder Wide-Zeichen.
find -name *ü* | xargs rename 's./ü/ue/' *
Diesen Befehl würde ich gerne benutzen, aber nur in einem Verzeichnis, kann man hier eine <dir> Variable bestimmen?
Ungültiges oder unvollständiges Multi-Byte oder Wide-Zeichen
Ergänzung ()
Irgendwas von:
Unzulässiges oder falsches Multi-Byte oder Wide-Zeichen.
find -name *ü* | xargs rename 's./ü/ue/' *
Diesen Befehl würde ich gerne benutzen, aber nur in einem Verzeichnis, kann man hier eine <dir> Variable bestimmen?
GrandTheft
Lt. Commander
- Registriert
- Dez. 2008
- Beiträge
- 1.276
einfach nur
im betreffenden Verzeichnis.
gt
Du hast da übrigens einen Punkt vor dem ersten Slash, der da nicht hingehört.
Code:
rename 's/ü/ue/' *
im betreffenden Verzeichnis.
gt
Du hast da übrigens einen Punkt vor dem ersten Slash, der da nicht hingehört.
Folgender Befehl:
Folgende Antwort:
Als nächstes:
Habe das Laufwerk vorher in /media/ftp gemounted und bin dann mittels cd /media/ftp in das Verzeichnis gegangen.
Code:
find -name *ü* | xargs rename 's/ü/ue/' *
Folgende Antwort:
xargs: unmatched einfache quote; by default quotes are Special to xargs unless you use the -0 option
Als nächstes:
Can't rename Bücher Buecher: Datei oder Verzeichnis nicht gefunden
Habe das Laufwerk vorher in /media/ftp gemounted und bin dann mittels cd /media/ftp in das Verzeichnis gegangen.
GrandTheft
Lt. Commander
- Registriert
- Dez. 2008
- Beiträge
- 1.276
kann es sein, dass Du den find.. Befehl bereits in einem Verzeichnis ausführst, in dem es Umlaute gibt? Versuchs doch mal ein Verzeichnis darunter. (also das sollte nichts ausmachen....)
Probier lieber mal:
ohne den Stern am Ende?
gt
Probier lieber mal:
ohne den Stern am Ende?
gt
GrandTheft
Lt. Commander
- Registriert
- Dez. 2008
- Beiträge
- 1.276
hm... funktioniert bei mir, bin ratlos 
gt

gt
Ich habe zum umbenennen von Ordnern und Dateinamen bisher immer dieses Skript verwendet. Habe das irgendwo mal aufgeschnappt und für mich angepasst. Seitdem habe ich es allerdings nie mehr gebraucht weil ich nun konsequent auf Umlaute verzichte.
Das Skript muss allerdings mehrmals laufen gelassen werden, wenn in Ordnern mit Umlauten auch Dateien mit Umlauten liegen.
Code:
#!/usr/bin/perl -w
use strict;
use File::Find;
use File::Copy;
# Unterverzeichnisse ebenfalls ändern
find \&wanted, @ARGV;
sub wanted {
return if /^\.\.?$/;
my $orig = $_;
my $ch;
$ch++ if tr/A-Z/a-z/;
$ch++ if s/ /_/g;
$ch++ if s/&/_/g;
$ch++ if s/ä/ae/ig;
$ch++ if s/ö/oe/ig;
$ch++ if s/ü/ue/ig;
$ch++ if s/ß/ss/g;
if ( $ch ) {
if ( -e ) {
print "Skipped: $orig => $_ : Zieldatei existiert bereits.\n";
} else {
print "move: $orig => $_\n";
# Kommentieren für Testlauf
move $orig, $_ or warn "Error: move: $orig => $_ : $!\n";
}
}
}
Das Skript muss allerdings mehrmals laufen gelassen werden, wenn in Ordnern mit Umlauten auch Dateien mit Umlauten liegen.
mensch183
Captain
- Registriert
- Jan. 2008
- Beiträge
- 3.666
Es ist doch offensichtlich, dass der verwendete Zeichensatz beim Interpretieren der Dateinamen nicht dem tatsächlichen Zeichensatz der Dateinamen entspricht.
Ist es wirklich zu viel verlangt, mal genau zu beschreiben, wie der fehlerproduzierende Kopierversuch genau aussieht? Mit welchem Programm? Mit welchen Optionen? Um welches Filessystem handelt es sich? Welche Mount-Optionen werden verwendet?
Falls der Fehler beim Hantieren im Terminalfenster auftritt, bitte einfach mal Befehl samt Fehlermeldung 1:1 hierher kopieren. Dazu noch den Output von "mount". Dann müßten nicht zig Leute planlos im Nebel rumstochern. Vermutlich fehlt nur ein nls=<irgendwas> als Mountoption, aber ohne passable Fehlerbeschreibung bleibt nur rätselraten.
Ist es wirklich zu viel verlangt, mal genau zu beschreiben, wie der fehlerproduzierende Kopierversuch genau aussieht? Mit welchem Programm? Mit welchen Optionen? Um welches Filessystem handelt es sich? Welche Mount-Optionen werden verwendet?
Falls der Fehler beim Hantieren im Terminalfenster auftritt, bitte einfach mal Befehl samt Fehlermeldung 1:1 hierher kopieren. Dazu noch den Output von "mount". Dann müßten nicht zig Leute planlos im Nebel rumstochern. Vermutlich fehlt nur ein nls=<irgendwas> als Mountoption, aber ohne passable Fehlerbeschreibung bleibt nur rätselraten.
peter23555
Newbie
- Registriert
- Juni 2011
- Beiträge
- 4
Hallo!
Würd mich gerne an die Frage des Threaderstellers anschließen.
Mein NAS hat irgendwie die Festplatte zerschossen und ich konnte nicht mehr darauf zugreifen. Platte ausgebaut, in den Rechner eingebaut und sie wurde erkannt. Jedoch bei Zugriff drauf kam immer wieder Reboot (in Windows XP).
Knoppix sei Dank konnte ich normal drauf zugreifen, jedoch habe ich das Umlaute Problem (u.a. auch ß). Diese Buchstaben werden mir als irgendein Zeichen angezeigt und die betroffen Dateien lassen sich leider nicht wegsichern.
Bei mir sinds dann doch leider ein paar 100.000 Files, welche ich auch teilweise nicht umbenennen sollte (also ä -> ae, usw.).
Meine Knoppix Version ist: 6.4.3 von (http://www.chip.de/downloads/Knoppix_13013232.html)
Als Datei-Manager kann ich da PcManFM 0.9.8 benutzen, der mir eben diese komischen Zeichen anzeigt.
Datum steht beim Booten 2010-12-18 und ich denke Kernel: 2.6.36.1
Optionen kann ich da kaum einstellen. Klick drauf, kopieren, dann rein in meine andere Festplatte und Klick auf einfügen. Dann tritt der Fehler auf der da lautet:
Ungültiges oder unvollständiges Multi- Byte- oder Wide-Zeichen.
Für Hilfe wäre ich dankbar.
Mfg
Würd mich gerne an die Frage des Threaderstellers anschließen.
Mein NAS hat irgendwie die Festplatte zerschossen und ich konnte nicht mehr darauf zugreifen. Platte ausgebaut, in den Rechner eingebaut und sie wurde erkannt. Jedoch bei Zugriff drauf kam immer wieder Reboot (in Windows XP).
Knoppix sei Dank konnte ich normal drauf zugreifen, jedoch habe ich das Umlaute Problem (u.a. auch ß). Diese Buchstaben werden mir als irgendein Zeichen angezeigt und die betroffen Dateien lassen sich leider nicht wegsichern.
Bei mir sinds dann doch leider ein paar 100.000 Files, welche ich auch teilweise nicht umbenennen sollte (also ä -> ae, usw.).
Meine Knoppix Version ist: 6.4.3 von (http://www.chip.de/downloads/Knoppix_13013232.html)
Als Datei-Manager kann ich da PcManFM 0.9.8 benutzen, der mir eben diese komischen Zeichen anzeigt.
Datum steht beim Booten 2010-12-18 und ich denke Kernel: 2.6.36.1
Optionen kann ich da kaum einstellen. Klick drauf, kopieren, dann rein in meine andere Festplatte und Klick auf einfügen. Dann tritt der Fehler auf der da lautet:
Ungültiges oder unvollständiges Multi- Byte- oder Wide-Zeichen.
Für Hilfe wäre ich dankbar.
Mfg
mensch183
Captain
- Registriert
- Jan. 2008
- Beiträge
- 3.666
Ich quote mich mal selbst:
Also mal ein xterm starten und mit "mount" nachschauen.
mensch183 schrieb:Um welches Filessystem handelt es sich? Welche Mount-Optionen werden verwendet?
...
Vermutlich fehlt nur ein nls=<irgendwas> als Mountoption, aber ohne passable Fehlerbeschreibung bleibt nur rätselraten.
Also mal ein xterm starten und mit "mount" nachschauen.
peter23555
Newbie
- Registriert
- Juni 2011
- Beiträge
- 4
Danke für den Hinweis.mensch183 schrieb:Also mal ein xterm starten und mit "mount" nachschauen.
Das liefert mir "mount":
Code:
rootfs on / type rootfs (rw,relatime)
proc on /proc type proc (rw,relatime)
sysfs on /sys type sysfs (rw,relatime)
/dev/sr0 on /mnt-system type iso9660 (ro,relatime)
tmpfs on /ramdisk type tmpfs (rw,relatime,size=2097152k)
/dev/cloop on /KNOPPIX type iso9660 (ro,relatime)
unionfs on /UNIONFS type aufs (rw,relatime,si=a87bf57c,noplink)
unionfs on /home type aufs (rw,relatime,si=a87bf57c,noplink)
usbfs on /proc/bus/usb type usbfs (rw,relatime)
tmpfs on /UNIONFS/var/run type tmpfs (rw,relatime,size=10240k)
tmpfs on /UNIONFS/var/lock type tmpfs (rw,relatime,size=10240k)
tmpfs on /UNIONFS/var/log type tmpfs (rw,relatime,size=102400k)
tmpfs on /tmp type tmpfs (rw,relatime,size=2097152k)
udev on /dev type tmpfs (rw,relatime,size=20480k)
tmpfs on /dev/shm type tmpfs (rw,relatime,size=2097152k)
devpts on /dev/pts type devpts (rw,relatime,mode=1777)
cgroup on /cgroup/cpu type cgroup (rw,relatime,cpu,release_agent=/usr/sbin/cgroup-remove)
/dev/sdb1 on /media/sdb1 type vfat (rw,nosuid,nodev,relatime,uid=1000,gid=1000,fmask=0000,dmask=0000,allow_utime=0022,codepage=cp850,iocharset=iso8859-1,shortname=winnt,errors=remount-ro)
/dev/sda1 on /media/sda1 type fuseblk (rw,nosuid,nodev,relatime,user_id=1000,group_id=0,allow_other,blksize=4096)
/dev/sdd1 on /media/sdd1 type fuseblk (rw,nosuid,nodev,relatime,user_id=0,group_id=0,allow_other,blksize=4096)
Wobei "/media/sdb1" das Laufwerk ist, wovon ich gerne meine Daten gerettet hätte.
Danke für jedwege Hilfe.
Ähnliche Themen
- Antworten
- 6
- Aufrufe
- 788