Mailinglist Archive: opensuse-de (1791 mails)

< Previous Next >
Re: pst nach evolution Umlaute kaputt, mit sed reparieren
  • From: Kai Krämer <kt.kraemer@xxxxxx>
  • Date: Fri, 17 Nov 2006 18:47:37 +0100
  • Message-id: <1163785657.13499.4.camel@xxxxxxxxxxxxxx>
Am Freitag, den 17.11.2006, 17:53 +0100 schrieb Jan Ritzerfeld:
> Am Freitag, 17. November 2006 17:13 schrieb Kai Krämer:
> > mit dem sed Befehl komme ich aber nicht klar kann mir jemand helfen?
> > (...).
> > Ich denke, mit sed kann ich das lösen....
>
> Ich befürchte eher nicht. Da ich das Format von Evolution nicht kenne, nehme
> ich einfach mal folgendes an:
> 1. addressbook.db ist eine binäre" Datenbankdatei,
> 2. gehe ich davon aus, daß auch dort UTF-8 als Zeichensatz erwartet wird,
> wie generell unter aktuellen Linux-Distributionen, aber tatsächloch cp12xx
> von Windows benutzt wird, und
> 3. braucht UTF-8 für Umlaute mehr als 1 Byte, cp12xx nur eins.
>
> Aus allem zusammen folgt für mich, daß du mit sed nicht weiterkommen wirst,
> weil wegen 3. die interne Struktur der Datenbank (1.) bei einer
> Konvertierung (2.) durcheinander geraten wird.

Mal probiert und Ende! Geht mit der dbase-Datei nicht. Wäre zu schön.
Aber schön schnell alles Konvertiert.

> Guck dir mal
> http://gentoo-wiki.com/TIP_Moving_data_from_outlook_to_evolution an, dort
> wird zum Export das VCard-Format genutzt, welches IIRC zeilenorientiert ist
> und damit eine Änderung der Länge innerhalb einer Zeile übersteht. Das
> erwähnte recode-Programm ist bei SL dabei.

Das ist der Erfolg:
A)
kai@tower:~/Kontakte> ./recode_and_cat_contacts >> addressbook.vcf
/bin/bash: for datei in ./* ; do if [ -f "$datei" ] then cat "$datei" |
recode CP1258/ fi done: Datei oder Verzeichnis nicht gefunden
kai@tower:~/Kontakte>

oder B)
kai@tower:~/Kontakte> sh recode_and_cat_contacts >> addressbook.vcf
kai@tower:~/Kontakte> dir add*
-rw-r--r-- 1 kai users 0 17. Nov 18:39 addressbook.vcf
kai@tower:~/Kontakte>

Hmpf!

kai@tower:~/Kontakte> cat recode_and_cat_contacts
#!/bin/bash for datei in ./* ; do if [ -f "$datei" ] then cat "$datei" |
recode CP1258/ fi done
kai@tower:~/Kontakte>

Ist ausführbar und alles richtig geschrieben. Ausgeführt im Verzeichnis
mit den ganzen *.vcs. Null bite groß :(

Hilfe?
Kai.

--
Kai & Anke Krämer
Cornelia-Schlosser-Allee 28
79111 Freiburg
< Previous Next >
Follow Ups