Un caro amico mi contatta e mi chiede se fosse possibile aggiornare i valori di un attributo di migliaia di shapefile: perché farlo uno ad uno impiegherebbe molto tempo, oltre che noioso, e con alta probabilità di errore.
La mia risposta è stata affermativa e di seguito condivido lo script utilizzato.
Immaginate una cartella con all’interno migliaia di shapefile, l’aggiornamento da fare è relativo ad un campo denominato data
e popolato da un valore xx
da aggiornare a yyy
:
lo script per singolo file è:
ogrinfo -dialect SQLite -sql "UPDATE nomeshp SET data='xx' WHERE DEN_CM='yyy'" nomeshp.shp
per farlo su tutte gli shapefile, occorre fare un ciclo:
FOR %f in (*.shp) do (ogrinfo -dialect SQLite -sql "UPDATE %~nf SET data='xx' WHERE DEN_CM='yyy'" %f)

NOTE FINALI: la riga di comando è particolarmente utile per questi lavoretti!!!
RIFERIMENTI
- GDAL / ogrinfo : https://gdal.org/programs/ogrinfo.html
I MIEI CANALI – ISCRIVITI
- Telegram : https://t.me/pigrecoinfinito
- YouTube : https://www.youtube.com/c/TotòFiandaca
Se il blog post Ti è piaciuto cliccate su ‘Mi piace’, grazie!!!
if you liked the blog post click on ‘Like’, thank you !!!
Un pensiero su “Aggiornare i valori di un attributo usando OSGeo4W Shell e ogrinfo”