@(#)$Id: README,v 1.3 1993/07/01 15:04:16 koppenh Exp $ plz.perl - Postleitzahlumstellung ========= Copyright ========= Die Programme in diesem Verzeichnis duerfen nur unter den Bedingungen der 'GNU General Public License' (siehe File COPYING) verwendet und weitergegeben werden. "This is free software, and you are welcome to redistribute it under certain conditions". Die verwendeten Daten stammen von der Deutschen Bundespost und sind von verschiedenen ftp-Servern frei erhaeltlich: ftp.rus.uni-stuttgart.de:/pub/info/allgemein/PLZ ftp.germany.eu.net:/pub/packages/plz cd4680fd.rrze.uni-erlangen.de:/rrze/plz ===== Autor ===== Andreas Koppenhoefer, Student der Universitaet Stuttgart, BR Deutschland email: koppenh@dia.informatik.uni-stuttgart.de privat: Belaustr. 5/3, D-70195 Stuttgart, Germany phone: +49 711 696378 and +49 711 694111 (19-22h MEZ/MESZ) ============ Beschreibung ============ plz.perl ist eine Sammlung von perl-Scripten zur Umstellung der alten vierstelligen auf die neuen fuenfstelligen Postleitzahlen. Es zeichnet sich besonders durch seine Schreibweisentoleranz und die ausfuehrlichen Hilfetexte bei nichtgefundenen Adressen aus. Die Scripte wurden mit perl Version 4.035 auf einer sparc-10/41 unter SunOS 4.1.3 entwickelt und mit geringem Aufwand auf einen 386er-PC unter SCO Xenix 2.3.2 portiert. Es muesste also auf (fast) jedem Rechner/Betriebssystem lauffaehig sein, auf denen auch perl 4.0xx installiert ist. =========== Platzbedarf =========== plz.perl verwendet komprimierte und fuer die Beduerfnisse von perl zurechtgeschnittene Daten. Sie belegen etwa 24 Mbyte Plattenplatz (im Vergleich dazu die Orginal-Leitdateien von ca. 83 Mbyte). Zur Laufzeit benoetigt perl auf unserer sparc-Maschine etwa 3 MByte vom virtuellen Speicher. Auf dem ftp-Server ftp.informatik.uni-stuttgart.de (129.69.211.2) liegen folgende Files im Verzeichnis /pub/postleitzahlen: plz.perl-XXX.readme dieser Text plz.perl-XXX.data.tar.z Daten plz.perl-XXX.prog.tar.z perl scripts ... wobei XXX die Versionsnummer des Release ist. ============ Installation ============ Fuer die Installation brauchen Sie einen schnellen Rechner und mindestens 25 Mbyte freien Plattenplatz. - Auspacken der tar-files (haben Sie sicher schon gemacht, wenn Sie diesen Text lesen). - Wenn plz.perl auf einem System (Xenix, ...) installiert wird, das die '#!'-Schreibweise in der ersten Zeile eines Scripts nicht kennt, dann muessen Sie noch eine Zeile vor den Anfang von server.pl und pack.pl einfuegen, die nur einen Doppelpunkt enthaelt. - Jetzt ist ein erster Test moeglich mit: (cd postleitzahlen/server; perl server.pl) Der plz-Server ist damit schon installiert und benutzbar. Folgende Schritte sind nur fuer eine bequeme Nutzung auf einem vernetzten Unix-System sinnvoll. - Pruefen Sie, ob Sie den plz-server auch mit folgendem Kommando starten koennen: (cd postleitzahlen/server; server.pl) Wenn nicht, dann pruefen Sie, ob perl an der richtigen Stelle installiert ist mit dem Kommando: which perl Wenn hier '/usr/local/bin/perl' angegeben wird, dann ist alles ok. Wenn nicht, muessen Sie den String '/usr/local/bin/perl' in den ersten Zeilen der Scripts 'server.pl' und 'pack.pl' durch den richtigen Pfad ersetzen. - Einrichten eines Benutzers 'plz'. Als uid habe ich auf unserem System die von nobody (65534) gewaehlt. Homedir sollte das Verzeichnis 'server' sein, login-shell das darin enthaltene Script 'server.pl'. Beispiel fuer einen passwd-Eintrag: plz::65534:65534:Postleitzahl-Daemon:/home/postleitzahlen/server:server.pl - Test des Zugriffs - Sollte wie der erste Test funktionieren. rlogin localhost -l plz ================================================== Installation neuer/geaenderter/anderer Postdateien ================================================== - Legen Sie die Post-Dateien umsda strada ortarda pofada im Verzeichnis postleitzahlen/daten ab. Sie duerfen unkomprimiert oder mit compress/gzip komprimiert sein. - Unter /tmp sollten Sie etwa 16 MByte freien Platz haben, die das unix-Programm 'sort' benoetigt. Wenn nicht, koennen sie ein anderes Verzeichnis mit der Environment-Variablen TMPDIR bestimmen - Beispiel: setenv TMPDIR /home/tmp - Wenn Sie bereits existierende gepackte Daten nicht ueberschreiben wollen, koennen die mit PLZHOME ein anderes Verzeichnis angeben, in dem das subdir daten angelegt werden kann. In $PLZHOME/../daten muessen die Postdateien zu finden sein. - Beispiel: setenv PLZHOME $HOME - Starten sie jetzt im Verzeichnis postleitzahlen/server das script pack.pl. - Gehen Sie gemuetlich Kaffeetrinken - pack.pl braucht eine ganze Weile. - Warnmeldungen 'ignoring bad line...' koennen Sie ignorieren. Ursache ist eine defekte ortarda-Datei wie sie auf manchen ftp-Servern zu finden ist. Sie enthaelt in ein paar wenigen Zeilen Kontrolsequenzen die das Zeilenformat durcheinander bringen. - Nach (erfolgreichem) Ende des Programms pack.pl koennen Sie die Post-Dateien wieder loeschen, wenn Sie wollen. =========================== Was das Programm nicht kann =========================== - Die Post-Dateien plzda, orteilda und sthnrar werden nicht verwendet. Deshalb sind auch alle Informationen aus diesen Dateien (z.B. Strassenumbenennungen) nicht verfuegbar. - Die Benutzerschnittstelle laesst zu wuenschen uebrig. - Der Programmierstil ist z.T. haarstraeubend schlecht - aber das Teil funktioniert ... und das ist doch das wichtigste, oder? ======================== Worauf man achten sollte ======================== - Geben Sie die Adresse in folgender Form ein: PLZ Ort; Strasse Hausnummer bzw. Postfach Beispiel: "7000 Stuttgart 1; Belaustr. 5/3" - Die Ausgabe erfolgt immer in folgendem Format: "<Eingabe>= <Ausgabe>" ...wobei <Eingabe> die normierte Darstellung Ihrer alten Adresse ist und <Ausgabe> bei einer erfolgreichen Umsetzung immer mit einer Ziffer beginnt. Bei einem Fehler koennen noch weitere Ausgabezeilen mit Fehlerhinweisen folgen, die alle mit einen TAB (Ctrl-I) beginnen. - PLZ's aus den neuen Bundeslaendern muessen ein vorangestelltes 'O' oder 'X' haben. 'D', 'W' steht fuer die alten Bundeslaender. - Achten Sie auf postalisch korrekte Schreibweise. Doppelorte mit '-' ohne Leerzeichen schreiben. Beispiel: 'Villingen-Schwenningen'. - Hausnummernzusaetze ohne Leerzeichen an die Hausnummer anfuegen (Beispiel: Sibyllenstr. 18a) oder mit '/' schreiben (Beispiel: Katharinenstr. 4/I) - Hausnummernbereiche am besten weglassen, also "Hauptstr. 20" oder "Hauptstr. 22" statt "Haupstr. 20-22". - Umlaute werden bei der Eingabe in verschiedenen Darstellungen akzeptiert: 7-bit German-ASCII, IBM-PC, ISO 8859, Tex-Notation ("a) oder Ersatzdarstellung (ae). - Die Umlaut-Ersatzdarstellung sollte man wenn moeglich meiden, da es vorkommen kann, dass trotz richtiger Schreibweise der Ort nicht gefunden wird. Beispiel-Protokoll: Eingabe: 8741 Wuelfershausen an der Saale Antwort: W8741 Wuelfershausen an der Saale; = PLZ/Ort nicht gefunden Eingabe: 8741 W"ulfershausen an der Saale Antwort: W8741 W"ulfershausen an der Saale; = 97618 W"ulfershausen; - server.pl akzeptiert eine Anzahl von Optionen. Schauen Sie sich 'mal die Kommentare im Script server.pl an. Eine man-Seite habe ich (noch) nicht geschrieben. Beispiel: Mit dem Kommando server.pl -c -l 7110 Oehringen wird eine sortierte Liste aller in einem Landkreis verwendeten PLZ's erstellt. Mit '-L' statt '-l' wird die Liste noch groesser. '-l' und '-L' ist nicht fuer Grossstaedte geeignet, da deren Landkreise in der Regel nur aus einem Ort und seinen Ortsteilen besteht! Die "leere" Option '-' unterdrueckt die Information beim Programmstart. - Wer eine ganze Adressdatei umstellen moechte, die in einem festen (fremden) Format vorliegt, der kann sich den Programmteil, der die Option '-u' in server.pl behandelt, als Beispiel fuer ein eigenes perl-Script zur Umstellung der Adressdatei vornehmen. - Eine andere Moeglichkeit der Umstellung grosser Adressbestaende ist die Verwendung des Programms server.pl als Filter - Beispiel: server.pl adressen.alt >adressen.neu Dazu muessen Sie Ihre Adressen in die richtige Form bringen und nach der Umsetzung die geaenderten Adressen aus dem File adressen.neu in Ihre Adressdatei importieren. - Die Eingabe (Eingabedatei) darf am Zeilenanfang in runde Klammern gesetzte Angaben enthalten, die komplett ignoriert, aber zusammen mit Option -t unveraendert wieder ausgegeben werden. Das ist nuetzlich z.B. bei der Umstellung einer Datenbank: Es koennen Angaben der Datenbank (z.B. Benutzernummer einer Bibliothek) mitgeschleppt werden. Die Auswertung der umgesetzten Adressen wird einfacher, da ein Bezug zur Orginal-Adresse vorhanden ist. - Es gibt keine Garantie auf gar nichts! Der Einsatz der Programme erfolgt auf Ihr eigenes Risiko. - Wenn Sie Probleme mit Ihrer Datenbank/Adressdateien haben und eine Anpassung des Programms wuenschen und dafuer etwas Geld auszugeben bereit sind, dann rufen Sie mich an oder schicken eine email an mich. Einen Nebenverdienst kann ein Student immer gebrauchen. Korrekturen fuer Programmfehler mache ich kostenlos, wenn es im allgemeinen Interesse liegt. *** Verbesserungsvorschlaege/Programm-Korrekturen/Geldspenden/Job-Angebote *** werden vom Autor dankend angenommen. Andreas Koppenhoefer PS: Wenn Sie das Programm einsetzten, wuerde ich mich ueber eine kurze email von Ihnen freuen.
In diesem Directory liegen Daten und Programme zur Umstellung der alten vierstelligen PLZ auf die neuen fuenfstelligen. daten/* Original-Daten der DBP - entpackt, aber sonst unveraendert. server/* Perl-Scripte und komprimierte Daten, Index-Dateien, Logfiles, etc. Andreas Koppenhoefer
These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.