[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: sed: Problem mit Umlauten



Hi Peter,

Peter Funk, Mittwoch, 28. März 2012: 

> VIM "errät" das Encoding.  Tippe mal im VIM den Befehl
> 
> 	:set fileencoding
> 
> ein.  Der wird dann vermutlich "latin1" anzeigen (das ist eine andere
> Bezeichnung für ISO-8859-1).

In der Tat.


> Das Systemencoding (das ist das, was Du hinter der Sprache angibst) hat
> keinen Einfluss auf das Encoding von bereits vorhandenen Dateien und
> Dateinamen.

Verstehe.


> Mit
>   iconv --from-code=ISO-8859-1 --to-code=UTF-8 iso.txt > utf.txt
> oder im VIM lässt sich das Encoding einer Datei ändern.

Das Problem ist, daß die Datei von einem Windows-System via Samba immer
wieder neu angeliefert wird, sprich: ich kann am Encoding nichts ändern,
sondern muß die Datei nehmen, wie sie vorliegt.

Andererseits muß ich die Datei später, wenn sie auf dem Samba-Server
gelandet ist, mit einem sed-Aufruf durchwühlen können. Sed verschluckt
sich aber nun am "falschen" Umlaut.


Natürlich könnte ich jedesmal, bevor sed die Datei anfaßt, iconv
drüberlaufen lassen. Aber das ist irgendwie unschön. Gibts da nicht eine
andere Möglichkeit? Samba wird nicht helfen, denn das schreibt einfach
den Bitstrom, der von Windows kommt, in die Datei rein.

Kann man nicht sed sagen, daß es eine 8859-codierte Zeichenfolge zu
erwarten hat, und nicht eine utf8-codierte, sprich, daß Windows und sed
dasselbe meinen, wenn sie ein ä sehen?

-- 
Andre Tann


Reply to: