Adresslisten aus dem Adressbuch von Thunderbird generieren

25. November 2023

Ziel

In unserem Adressbuch von Thunderbird (Cardbook) haben wir im Laufe der Zeit viele Adressen gesammelt. Nun soll ein Teil dieser Adressen genutzt werden, um beispielsweise Einladungen zu verschicken. Basis für diese Serienbriefe sind Tabellen mit den Feldern aus den Einträgen im Adressbuch.

Vorgehen

Zunächst werden die gewünschten Adressen gekennzeichnet. Danach werden alle Datensätze des Adressbuchs in eine Datei exportieren. Diese Datei wird mit Hilfe einer Tabellenkalkulation geöffnet und dann weiter bearbeitet. Das finale Ergebnis kann dann für Serienbriefe und anderes genutzt werden.

Kennzeichnung der Adressen

Zur Kennzeichnung der Adressdaten bietet Cardbook den Bereich der „Benutzerdefinierten Eigenschaften“.

Diese Eigenschaftsfelder werden durch Anklicken geöffnet. Die vier Felder können als Sortierkriterium genutzt werden. Bei bis zu vier Unterscheidungen kann jedes Feld für einen spezifischen Anlass genutzt werden. Ansonsten können unterschiedliche Stichworte in den Feldern benutzt werden.

Exportieren des Adressbuchs

Nun werden alle Adressen des Adressbuchs exportiert.

Dazu auf die drei Punkte an der rechten Seite des Adressbuchnamens klicken. Dann erscheint das Kontextmenü. Dort „Exportieren…“ anklicken. Anschließend einen Dateinamen auswählen und mit „Speichern“ bestätigen. Die Dateiendung .csv wird automatisch angehängt. CSV beschreibt die Formatierung der Adressdatensätze.

Öffnen mit der Tabellenkalkulation

Zum Öffnen der exportierten Datei gibt es zwei Wege. Entweder durch Doppelklick auf den Dateinamen im Dateimanager bzw. Dateiexplorer oder in dem die Tabellenkalkulation gestartet wird und dort die gespeicherte Datei importiert wird.

Nachdem Doppelklick auf den Dateinamen geht der Import-Dialog der Tabellenkalkulation auf. Hier ein Beispiel mit LibreOffice Calc:

Der Import-Dialog kann normalerweise einfach mit OK bestätigt werden.

In der ersten Zeile steht der Feldname der Spalte. Das Trennzeichen in der Datei ist das Komma. Das Zeichenfolgen-Trennzeichen ist richtig als “ erkannt. Bei Bedarf kann das Format von Geburtstagen in dem Spaltenkopf durch Klicken auf „Standard“ angepasst werden.

Nachbearbeitung in der Tabellenkalkulation

Die nachfolgende Bearbeitung erfolgt nun mit den Mitteln der Tabellenkalkulation.

Beispielhaft sollen alle Zeilen, also Adressen, gelöscht werden, die einen bestimmten Inhalt in einem Benutzerdefinierten Feld haben. Dazu wird zunächst der AutoFilter aktiviert.

Der Autofilter für eine bestimmte Spalte ist durch das ausgefüllte kleine Dreieck im Spaltenkopf erreichbar. In dem Menü können dann alle Einträge abgewählt werden, die nicht gelöscht werden sollen.

Dann bleiben die zu löschenden Zeilen sichtbar. Diese werden dann markiert, z.B. mit der Maus auf die Zahlen am linken Rand klicken und nach unten fahren. Die oberste mit den Spaltennamen und AutoFiltern bleibt außen vor. Mit einem Klick mit der rechten Maustaste auf die Zahlen erscheint das Kontextmenü. In diesem wird der Eintrag „Zeilen löschen“ ausgewählt. Nun werden die anderen Zeilen in dem zuletzt benutzten AutoFilter wieder sichtbar gemacht.

Bewertung

In diesem Post wurde gezeigt, wie eine Liste mit Adressen erzeugt werden kann. Basis war die Kontaktliste im Thunderbird, die auch als CardBook bekannt ist. Dort werden die Adressen gekennzeichnet. Schön wäre, wenn ein Filter schon beim Export genutzt werden könnte. Das ist leider nicht der Fall, so dass eine Tabellenkalkulation wie LibreOffice Calc für die Auswahl genutzt werden muss.

Ich freue mich über Feedback.

Kostenloses Zertifikat für einen Apache Web-Server mit Let’s Encrypt

26. März 2016

In diesem Artikel stelle ich die Schritte dar, die zu einem kostenlosen Zertifikat für einen privaten Apache Web-Server geführt haben. Mein Web-Server steht zu Hause ist deswegen über DynDNS erreichbar. Beim mir ist es der myfritz.net-Dienst, aber andere werden genauso funktionieren.

Mein System ist ein Ubuntu 14.04 LTS mit apache 2.4.7.

Zunächst hole ich das Programm auf meinen Server in meinem Home-Verzeichnis.

$ git clone https://github.com/letsencrypt/letsencrypt
$ cd letsencrypt
$ ./letsencrypt-auto --help

Daraufhin werden eine ganze Reihe von Paketen nachinstalliert. Dazu muss das Nutzerkennwort eingegeben werden.

$ ./letsencrypt-auto --apache -d <mydyndns.domain>

Dann müssen die Nutzungsbestimmungen akzeptiert werden.

Da ich keinen ServerName in der Apache-Konfiguration gesetzt habe, muss ich die richtige Konfigurationsdatei auswählen.

Dann kommt die Erfolgsmeldung (26.03.2016).

Rückblick zum ersten Versuch

Bei meinem ersten Versuch am 05.03.2016 gab es leider keinen Erfolg. Ich weiß nicht, ob sich etwas grundsätzlich geändert hat oder ich einfach Glück hatte.

Dann kommt leider die Fehlermeldung, dass schon zu viele Zertifikate für myfritz.net ausgestellt wurden:

Too many certificates already issued for: myfritz.net

There is already a pull request issued by AVM, but it is not processed so far: https://github.com/publicsuffix/list/pull/77

Andere Lösungen werden bei Let’s Encrypt diskutiert: https://github.com/letsencrypt/boulder/issues/1434

https://community.letsencrypt.org/t/too-many-certificates-already-issued-for-myfritz-net/10416

OwnCloud-Server einrichten

19. April 2015

Dies sind Notizen zur Installation und Einrichtung eines OwnCloud-Dienstes der Version 8.0.2 auf einem Ubuntu 14.04 LTS System.

Dabei bin ich dieser Anleitung gefolgt: http://wiki.ubuntuusers.de/ownCloud. Der Web-Server Apache 2.4.7 lief schon auf dem System. Ich habe mich dabei für die Datenbank MariaDB entschieden.

Das Einrichten eines Benutzers für den Datenbankzugriff und eine leere Datenbank anlegen ist hier beschrieben: https://doc.owncloud.org/server/7.0/admin_manual/configuration/database_configuration.html

Danach wurde direkt auch die Apache/SSL Konfiguration vorgenommen. Hier die Befehle als Zusammenfassung:

sudo -i
openssl genrsa -out /etc/ssl/private/apache.key 2048
openssl req -new -x509 -key /etc/ssl/private/apache.key -days 365 -sha256 -out /etc/ssl/certs/apache.crt
exit
sudo a2enmod ssl
sudo service apache2 force-reload

Anstatt eine neue ssl.conf anzulegen, wird die vorhandene /etc/apache2/sites-available/default-ssl.conf genutzt, aber die Pfade für die oben angelegten Schlüssel geändert:

sudo a2ensite default-ssl.conf
sudo service apache2 reload

Sitzt der lokale Server hinter einer FritzBox, so muss vor der Weiterleitung der Fritzbox-Dienst auf einen anderen Port umgelegt werden:
http://www.kussaw.de/2013/owncloud-zugriff-per-https-uber-das-internet-teil-ii/

Dann noch einige Tipps aus der c’t 21/2014, S. 76 umgesetzt:

crontab -u www-data -e

Damit diese Zeile ergänzt:

*/15 * * * * php -f /var/www/owncloud/cron.php

und in der Administrationsoberfläche von OwnCloud Cron von Ajax auf Cron umgestellt.

In /etc/php5/apache2/php.ini und /etc/php5/fpm/php.ini die Dateigrößen auf 2 GB angehoben und den Zeichensatz auf UTF-8 umgestellt (Hinweis in der Administrationsoberfläche):

upload_max_filesize = 2G
post_max_size = 2G
default_charset = "UTF-8"

Es wurde noch empfohlen FastCGI und einen Memcache-Daemon zu installieren:

sudo apt-get install php5-fpm memcached php5-memcache

In der Datei /etc/php5/fpm/pool.d/www.conf den Parameter listen umstellen auf

listen = 127.0.0.1:9000

Dann den FastCGI-Dienst neustarten:

sudo service php5-fpm restart

Der Tipp nginx zu installieren wurde nicht befolgt, weil die Nebenwirkungen nicht erkennbar waren, da noch andere Dienste auf dem Web-Server laufen.

In OwnCloud können in der Administrationsansicht nach dem Klicken auf das Pluszeichen weitere Anwendungen installiert werden. Ich habe das für Contacts und Calendar getan.

Wichtig: Beim Kalender die Zeitzone auf Europa/Berlin stellen. Dazu in der Kalenderansicht auf das Zahnrad unten links in der Ecke klicken, damit die Einstellungen mit der Zeitzone angezeigt werden.

Freien Plattenplatz bei einem FTP Server bestimmen

14. Dezember 2013

Bei FTP-Servern, deren Festplattennutzung mittels Quota beschränkt ist, kann bei einigen Servern folgender Befehl benutzt werden, um den benutzten und den noch verfügbaren Festplattenplatz anzuzeigen:

SITE QUOTA

Wird beispielsweise Filezilla benutzt, so kann dieser Befehl unter Server -> Benutzerdefinierten Befehl eingeben … eingegeben werden. Der FTP-Server antwortet dann mit den entsprechenden Angaben.

Beispielantwort des ProFTPD:

Befehl:    SITE QUOTA
Antwort:    200-The current quota for this session are [current/limit]:
Antwort:    200-Name: name
Antwort:    200-Quota Type: User
Antwort:    200-Per Session: False
Antwort:    200-Limit Type: Hard
Antwort:    200-  Uploaded Mb:        983.98/1000.00
Antwort:    200-  Downloaded Mb:    unlimited
Antwort:    200-  Transferred Mb:    unlimited
Antwort:    200-  Uploaded files:    unlimited
Antwort:    200-  Downloaded files:    unlimited
Antwort:    200-  Transferred files:    unlimited
Antwort:    200 Please contact root@beispiel.de if these entries are inaccurate

MS SQL Server akzeptiert double.NaN nicht

27. Juli 2012

In einem Link to SQL Ausdruck habe ich zur Laufzeit folgende Ausnahme bekommen:

The incoming tabular data stream (TDS) remote procedure call (RPC) protocol stream is incorrect. Parameter 5 („@p2“): The supplied value is not a valid instance of data type float. Check the source data for invalid values. An example of an invalid value is data of numeric type with scale greater than precision.

Das Problem war, dass T-SQL/MS SQL Server den Wert double.NaN (not-a-number) nicht akzeptieren. Dies ist überraschend, da es ein gültiger Fließkommawert nach IEEE 754 ist.

In dem Artikel wird das Problem ausführlich beschrieben:

http://www.codeproject.com/Tips/50340/MSSQL-doesn-t-completely-support-IEEE754-floating

Die Stellungnahme des Herstellers zum Problem und mögliche Workarounds:

https://connect.microsoft.com/SQLServer/feedback/details/239674/storing-ieee-754-floats-in-sql-server-2005-nan-infinity

Die Dokumentation zum Datentyp float schweigt sich über „Not a Number“ und „Inifity“ aus:

http://msdn.microsoft.com/en-us/library/ms173773%28v=sql.105%29.aspx

Network-Manager Applet wieder sichtbar

3. Januar 2011

Bei meinem GNOME-Desktop fehlten oben im Panel die Netzwerkverbindungen. Zuständig für die Anzeige ist der Network-Manager, genauer sein Applet. Es wird beim bei System->Einstellungen->Startprograme unter Netzwerkmanager mit dem Befehl nm-applet --sm-disable gestartet. Ein Zurücksetzen der Konfiguration des Panels hat auch nicht geholfen. Die Lösung bei mir bestand nun darin, dass ich den Eintrag von eth0 und eth1 in /etc/network/interfaces entfernt habe. In /etc/network/interfaces stehen nun also nur die Einträge für das interne Netzwerk-Device:

$ cat /etc/network/interfaces
auto lo
iface lo inet loopback

Nach dem nächsten Start der Netzwerkkonfiguration habe ich endlich auch die Netzwerkverbindungen wieder.

Mein Weg zum ersten Git-Repository inklusive Remote-Zugriff von Windows

29. Dezember 2010

Mein Weg zum ersten Git-Repository ist eigentlich schnell erzählt, da die wesentlichen Schritte schon im Netz stehen. Deswegen hier nur die wesentlichen Schritte mit Verweisen auf die Artikel, die mir weitergeholfen haben.

[Update]Achtung gitosis wird in Ubuntu 12.04 LTS nicht mehr unterstützt. Nachfolger ist gitolite (http://sitaramc.github.com/gitolite/)![/Update]
Den Rest des Beitrags lesen »

Beispiele aus dem Git-Tutorial unter Windows nachvollziehen

29. Dezember 2010

Das Git-Tutorial (http://www.kernel.org/pub/software/scm/git/docs/gittutorial.html) enthält eine Vielzahl von Beispielen, die sich aber alle auf die Kommandozeilenversion von Git beziehen. Um dies auch unter Windows nachvollziehen zu können, wird zunächst Git für Windows heruntergeladen (http://code.google.com/p/msysgit/) und dann wie üblich installieren.

Um git dann ausführen zu können, wird die Eingabeaufforderung benötigt. Die Eingabeaufforderung kann beispielsweise über das Start-Menü gestartet werden, in dem bei Start->Ausführen… das Programm cmd geöffnet wird.

In dem sich öffnenden Fenster, sollte zunächst der Pfad gesetzt werden, so dass git automatisch gefunden wird. Wurde msysgit beispielsweise in C:\Program Files\Git\bin\git.exe installiert, so wird der Pfad wie folgt gesetzt:
set PATH=C:\Program Files\Git\bin;%PATH%

Prüfen, ob der Pfad richtig gesetzt ist, z.B.
D:\>git --version
git version 1.7.3.1.msysgit.0

Nun können alle Beispiele aus dem Tutorial nachvollzogen werden.

Zum komfortablen Arbeiten unter Windows stehen Werkzeuge wie TortoiseGit zur Verfügung.

 

Git für Windows installieren und nutzen

1. Dezember 2010

Zur komfortablen Nutzung von Git ist eine Integration in den Dateiexplorer und eine grafische Oberfläche nützlich.

Installation von Git für Windows

Zur Installation von Git selber empfiehlt sich der Download, Prüfung der Checksum und die Installation von https://gitforwindows.org/

Integration in den Dateiexplorer mittels TortoiseGit

Zur Integration in den Dateiexplorer verwende ich TortoiseGit, weil ich TortoiseSVN schon kenne. Download von https://tortoisegit.org/download/.

Damit steht einer Verwendung von TortoiseGit nichts mehr im Wege. Dazu den Windows-Explorer starten und an die Stelle navigieren, die das Git-Repository enthalten soll. Ein bestehendes Repository kann mit neuen Kontextmenü-Eintrag „Git Clone…“ kopiert werden. Am einfachsten ist es mit einem bestehenden Repository anzufangen. Dazu kann in dem sich öffnenden Dialog bei Url das Repository in der Art „username@rechername.domain:gitrepositoryname.git“ angegeben werden. Dazu muss hinter dem Eingabefeld noch „Web“ statt „Dir…“ ausgewählt werden.

Wird bei dem verwendeten Git-Repository eine Authentifizierung verlangt, so geschieht dies meist mit einem privaten und öffentlichen SSH-Schlüsselpaar. Zur Erzeugung des SSH-Schlüsselpaares wird der Putty Key Generator genutzt, der direkt aus dem Putty-Verzeichnis gestartet wird. Nach Klick auf „Generate“ muss mit die Maus über die Dialogfläche bewegt werden. Dann beide Schlüssel speichern. Der private bleibt lokal und wird bei TortoiseGit angegeben. Der öffentliche wird dann im System hinterlegt oder zum Systemverwalter des Git-Repositories geschickt, der ihn dann zu den erlaubten Schlüsseln hinzufügt.

Vollständige grafische Oberfläche

Leistungsfähige Oberflächen sind inzwischen in allen guten IDE enthalten. Einen näheren Blick verdient hat SourceTree. Das ist ein gutes GUI für die wesentlichen Operationen mit Git. Für vorgeschrittene Operationen kann rasch auf die Bash gewechselt werden und dort die Befehle für das aktuell betrachtete Repository abgesetzt werden.

Wie geht es weiter?

Weitere Informationen zum Umgang mit Git sind in diesen Dokumenten zu finden:

Entwicklung/Debuggen von XSLT-Stylesheets

8. Juni 2010

Bei XSL Transformationen gibt es nicht immer einen Debugger, z.B. bei VS2008. In diesem Fall können Ausgaben verwendet werden. Leider kennt XSLT keinen print oder echo Befehl.

Ein einfacher Weg ist, sich neue Elemente zu definieren, die dann mit in die Ausgabe aufgenommen werden:

<element name="value" xmlns="http://example.com/exp">

<value-of select=“$value“/>

<element>

Dabei ist $value die zu beobachtende Variable. Sie kann natürlich auch durch einen anderen Ausdruck ersetzt werden.