1 |
On Sunday 17 October 2004 22:58, Frank Numrich wrote: |
2 |
> On Thu, 14 Oct 2004 23:24:25 +0200 |
3 |
> |
4 |
> Felix Tiede <lists@××××××××.de> wrote: |
5 |
> > Frank Numrich wrote: |
6 |
> > > Hallo, |
7 |
> > > |
8 |
> > > ich habe vor einiger Zeit eine Fileserver von Linux auf Genoo |
9 |
> > > umgezogen. Nun fällt mir auf, dass die Umlaute nicht richtig |
10 |
> > > angezeigt werden: Bsp.: Statt Überweisungsliste-Lohn-Gehalt.rpt |
11 |
> > > heißt die Datei nun ?berweisungsliste-Lohn-Gehalt.rpt |
12 |
> > > |
13 |
> > > Ich kann sie auch nur mit dem '?' im Namen ansprechen: |
14 |
> > > |
15 |
> > > czwserv1 Reports # ll Überweisungsliste-Lohn-Gehalt.rpt |
16 |
> > > ls: Überweisungsliste-Lohn-Gehalt.rpt: No such file or directory |
17 |
> > > |
18 |
> > > czwserv1 Reports # ll ?berweisungsliste-Lohn-Gehalt.rpt |
19 |
> > > -rwxrwx--- 1 root sekretariat 43008 Apr 8 2003 |
20 |
> > > ?berweisungsliste-DTA.rpt |
21 |
> > > |
22 |
> > > Wenn ich die Datei umbenenne/kopiere: |
23 |
> > > |
24 |
> > > czwserv1 Reports # cp ?berweisungsliste-Lohn-Gehalt.rpt |
25 |
> > > Überweisungsliste-Lohn-Gehalt.rpt |
26 |
> > > |
27 |
> > > dann kann ich die neue Datei mit Umlaut ansprechen, sie wird aber |
28 |
> > > immer noch mit '?' angezeigt: |
29 |
> > > |
30 |
> > > czwserv1 Reports # ll Überweisungsliste-Lohn-Gehalt.rpt |
31 |
> > > -rwxrwx--- 1 root sekretariat 43008 Oct 14 22:42 |
32 |
> > > ?berweisungsliste-DTA.rpt |
33 |
> > > |
34 |
> > > |
35 |
> > > Ich kann also auf der Console Umlaute verwenden. |
36 |
> > > Z.B. eine Datei mit Umlaut anlegen ... |
37 |
> > > |
38 |
> > > czwserv1 Reports # touch /tmp/Übertest |
39 |
> > > |
40 |
> > > ... ergibt folgendes Ergebnis: |
41 |
> > > |
42 |
> > > czwserv1 Reports # ll /tmp/Übertest |
43 |
> > > -rw-r--r-- 1 root root 0 Oct 14 22:30 |
44 |
> > > /tmp/?bertest |
45 |
> > > |
46 |
> > > Das verstehe ich ehrlich gesagt nicht. Anscheinend werden zwar |
47 |
> > > sowohl bei den 'Alten' (also vom alten Server kopierten) als auch |
48 |
> > > bei Neuen Dateien die Umlaute als '?' angezeigt, intern sind aber |
49 |
> > > bei den Neuen Dateien schon Umlaute vorhanden, bei den Alten |
50 |
> > > anscheinend die '?'. |
51 |
> > |
52 |
> > Ich hatte mit Gentoo ein ähnliches Problem. Aus irgendwelchen |
53 |
> > Gründen kommt die Konsole mit Unicode-Namen nicht umgehen kann, |
54 |
> > d.h. sie nicht (richtig) anzeigt werden. Da es aber keine doppelten |
55 |
> > Störzeichen, sondern Fragezeichen sind, nehme ich jetzt mal frech |
56 |
> > an, dass Deine Konsole (oder Lokalisierung) nicht den "richtigen" |
57 |
> > latin1-zeichensatz benutzt. |
58 |
> > |
59 |
> > Da ich die Konfiguration nicht kenne, kann ich nur raten:" |
60 |
> > In /etc/rc.conf folgendes eintragen |
61 |
> > KEYMAP="de-latin1" oder KEYMAP="de-latin1-nodeadkeys" |
62 |
> > CONSOLEFONT="lat9w-16" |
63 |
> > |
64 |
> > Ausserdem sicherstellen, dass die korrekten Locales definiert sind: |
65 |
> > LANG="de_DE@euro" |
66 |
> > i18n="de_DE" |
67 |
> > |
68 |
> > Das reicht zumindest für iso-8859-1(5)-kodierte Umlaute in |
69 |
> > Dateinamen. Sind sie Unicode-kodiert, ist mir kein Weg bekannt. |
70 |
> > |
71 |
> > Da ich auch die Server-Konfiguration und den Transportweg (SMB, |
72 |
> > NFS?) nicht kenne, kann ich auch hier nur raten, dass die |
73 |
> > Kodierungen nicht zusammenpassen. Im Zweifelsfall die |
74 |
> > Umgebungsvariablen $LANG und $i18n kontrollieren - sie sollten |
75 |
> > zumindest identisch sein. |
76 |
> > |
77 |
> > Hoffe, dass ich helfen konnte, viele Grüße |
78 |
> > Felix |
79 |
> > |
80 |
> > -- |
81 |
> > gentoo-user-de@g.o mailing list |
82 |
> |
83 |
> Vielen Dank für den Tipp, |
84 |
> |
85 |
> das scheints gewesen zu sein. LANG war auf POSIX. Ich hatte irgendwo |
86 |
> im Gentoo-Forum gelesen, dass das auch die beste Einstellung für root |
87 |
> sei, da ansonsten Probleme mit portage auftreten könnten. Daher |
88 |
> wurden beim kopieren der Dateien vom alten auf den neuen Server die |
89 |
> Umlaute nicht richtig umgesetzt. |
90 |
> |
91 |
> Jetzt muß ich nur noch alle Dateien finden, deren Namen ein '?' |
92 |
> enthalten und diese umbenennen. Geht leider nicht per Skript, da ja |
93 |
> nicht klar ist, ob das '?' nun durch ä, ö oder ü ersetzt werden muß. |
94 |
> |
95 |
> Wie kann ich den beim Suchen mit 'find' ein '?' angeben ohne dass es |
96 |
> als Wildcard verwendet wird? Das '?' mit einem '\' zu entwerten |
97 |
> ('\?') geht nicht. |
98 |
|
99 |
Reingefallen! B-) Du mußt es zweimal escapen, einmal für die Shell und |
100 |
einmal für den 'find'-Befehl: |
101 |
|
102 |
% echo $SHELL |
103 |
/bin/bash |
104 |
% touch \? a b c |
105 |
% find -iname \\? -maxdepth 1 |
106 |
./? |
107 |
|
108 |
-- |
109 |
So long... Fuzz |
110 |
|
111 |
-- |
112 |
gentoo-user-de@g.o mailing list |