source: trunk/data/konvert/postnas_0.5/alkis_konv_batch.sh @ 69

Revision 60, 3.0 KB checked in by frank.jaeger, 12 years ago (diff)
Line 
1#!/bin/sh
2## -------------------------------------------------
3## Konvertierung von ALKIS NAS-Format nach PosGIS  -
4## NAS-Daten in einem Ordner konvertieren          -
5## Batch-Teil, Aufruf mit geprueften Parametern    -
6## -------------------------------------------------
7## Stand:
8##  2010-01-06
9##  2010-01-26 postgreSQL 8.3
10##  2010-08-16 Dateiname als Zwischen-Ueberschrift in Fehlerprotokoll
11##  2010-10-14  gdal 1.8 compile aus svn gdal-trunk
12##  2010-11-10  Tabellen "Optimierte Nutzungsarten" Laden
13##  2010-11-25  Tabelle  "Optimierte Gemeinden"     Laden
14##
15## Konverter:   /opt/gdal-1.8/bin/ = GDAL 1.8 / PostNAS 0.5
16## Koordinaten: EPSG:25832  UTM, Zone 32
17##              -a_srs EPSG:25832   - bleibt im UTM-System (korrigierte Werte)
18##
19echo "**************************************************"
20echo "**   K o n v e r t i e r u n g     PostNAS 0.5  **"
21echo "**************************************************"
22## Auswerten der Parameter:
23ORDNER=$1
24DBNAME=$2
25DBUSER=$3
26DBPASS=$4
27UPD=$5
28##
29## Fehlerprotokoll
30errprot='/data/konvert/postnas_0.5/log/postnas_err.prot'
31## ! Bei parallelen Konvertierungen sollte die Ausgabe in getrennte Logfiles ausgegeben werden.
32## ! Ggf. die Start-Zeit in den Namen einbauen?
33##
34if [ $ORDNER = "" ]
35then
36        echo "Parameter 1 'Ordner' ist leer"
37        exit 1
38fi
39##
40if [ $DBNAME = "" ]
41then
42        echo "Parameter 2 'Datenbank' ist leer"
43        exit 2
44fi
45##
46if [ $DBUSER = "" ]
47then
48        echo "Parameter 3 'DB-User' ist leer"
49        exit 3
50fi
51##
52if [ $DBPASS = "" ]
53then
54        echo "Parameter 4 'DB-Passwort' ist leer"
55        #exit 4
56        echo "Datenbank-Passwort?  (wird nicht angezeigt)"
57        stty -echo
58        read DBPASS
59        stty echo
60fi
61##
62if [ $UPD = "a" ]
63then
64        verarb="NBA-Aktualisierung"
65        update=" -update "
66else
67        verarb="Erstladen"
68        update=""
69fi
70layer=""
71# leer = alle Layer
72  echo "Datenbank-Name . . = ${DBNAME}"
73  echo "Ordner NAS-Daten . = ${ORDNER}"
74  echo "Datenbank-User . . = ${DBUSER}"
75 #echo "Datenbank-Pass . . = ${DBPASS}"
76  echo "Verarbeitungs-Modus= ${verarb}"
77  echo " "
78  for nasdatei in ${ORDNER}/*.xml ; do
79        echo "  *******"
80        echo "  * Datei: " $nasdatei
81        # Zwischenueberschrift im Fehlerprotokoll
82        echo "  * Datei: " $nasdatei >> $errprot
83        # Groesse und Datum anzeigen
84        #ls -l ${nasdatei}
85        /opt/gdal-1.8/bin/ogr2ogr -f "PostgreSQL" -append  ${update}  -skipfailures \
86                PG:"dbname=${DBNAME} user=${DBUSER} password=${DBPASS} host=localhost port=5432" \
87                -a_srs EPSG:25832  ${nasdatei}  ${layer}  2>> $errprot
88        # Abbruch bei Fehler?
89        nasresult=$?
90        echo "  * Resultat: " $nasresult " fuer " ${nasdatei}
91  done
92  echo "** Ende Konvertierung Ordner ${ORDNER}"
93  echo "Das Fehler-Protokoll wurde ausgegeben in die Datei " $errprot
94##
95  echo "** Optimierte Nutzungsarten neu Laden:"
96  psql -p 5432 -d ${DBNAME}  -U ${DBUSER}  < /data/konvert/postnas_0.5/alkis_nutzungsart_laden.sql
97##
98  echo "** Optimierte Gemeindetabelle neu Laden:"
99  psql -p 5432 -d ${DBNAME}  -U ${DBUSER}  < /data/konvert/postnas_0.5/alkis_gemeinden_laden.sql
100##
Note: See TracBrowser for help on using the repository browser.