Da shapefile a geopackage e viceversa usando la cli

Aspettando la fine del vetusto shapefile in questo articolo farò vedere, usando la CLI (Command Line Interface) riga di comando, come ‘passare’ da un insieme di shapefile a un unico geopackage e viceversa,  cioè da un unico geopackage – con tanti vettori – a tanti shapefile distinti. Per maggiori dettagli su cosa sia un geopackage potete leggere questo mio post.

Da shapefile a geopackage:


#!/bin/bash
set -x
for i in *.shp;
do
ogr2ogr -f 'GPKG' -append pacchetto.gpkg "$i";
done

view raw

shp2gpkg.sh

hosted with ❤ by GitHub

lo script va eseguito all’interno della cartella che contiene gli shapefile ottenendo un unico geopackage con tanti vettori quanti sono gli shapefile e con stessi nominativi.

Da geopackage a shapefile:


#!/bin/bash
set -x
# estrae tutti i vettori nella cartella output
ogr2ogr -f 'ESRI Shapefile' output pacchetto.gpkg

view raw

gpkg2shp.sh

hosted with ❤ by GitHub

lo script genera tanti shapefile quanti sono i vettori all’interno del geopackage e li mette tutti all’interno della cartella output; in questo processo si potrebbero perdere alcune informazioni per esempio se la lunghezza dei nomi dei campi degli shp supera i 10 caratteri si avrà un troncamento degli stessi (la cli visualizzerà dei warning).

 

Buon lavoro

Un doveroso grazie al mio amico Andy

 

Geopackage di esempio.

 

Pubblicità

Rispondi

Inserisci i tuoi dati qui sotto o clicca su un'icona per effettuare l'accesso:

Logo di WordPress.com

Stai commentando usando il tuo account WordPress.com. Chiudi sessione /  Modifica )

Foto Twitter

Stai commentando usando il tuo account Twitter. Chiudi sessione /  Modifica )

Foto di Facebook

Stai commentando usando il tuo account Facebook. Chiudi sessione /  Modifica )

Connessione a %s...

Questo sito utilizza Akismet per ridurre lo spam. Scopri come vengono elaborati i dati derivati dai commenti.