Comment renommer les noms de champs dans un fichier de formes à partir de la ligne de commande?


20

J'ai besoin de renommer les noms de champs (attributs) dans un fichier de formes. Existe-t-il un moyen simple de le faire à partir de la ligne de commande?

Réponses:


31

Vous pouvez utiliser l' utilitaire ogr2ogr fourni avec les outils de ligne de commande gdal . Utilisez l' -sqloption comme suit:

ogr2ogr outputfile.shp inputfile.shp -sql "SELECT oldfield1 AS newfield1, oldfield2 AS newfield2 from inputfile"

En prime, vous pouvez convertir les données dans un format différent en même temps ou filtrer vos données en spécifiant une clause where. Notez que vous devrez spécifier tous les champs de sortie si vous utilisez cette méthode (tous les champs non inclus dans l'instruction SELECT seront supprimés du fichier de sortie).


2
Vous pouvez également répertorier les noms de champ à l'aide deogrinfo -so inputfile.shp inputfile
Mike T

Remarque: cette méthode ne fonctionne que lors de la transformation de fichiers de formes. Par exemple, si vous utilisez le format de données GeoJSON, vous devez d'abord le convertir en un fichier de formes, puis effectuer une autre transformation en utilisant l' -sqlindicateur.
clhenrick

Vous devez également ajouter l'option -dialect SQLITE, sinon ogr2ogr générera une erreur 6: output_file.shp doit contenir au moins un champ attribut 1
Dmitriy Litvinov
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.