Şekil dosyasındaki alan adlarını komut satırından nasıl yeniden adlandırabilirim?


20

Shapefile alan adları (öznitelikler) yeniden adlandırmak gerekiyor. Bunu komut satırından yapmanın kolay bir yolu var mı?

Yanıtlar:


31

Gdal komut satırı araçlarıyla birlikte paketlenmiş olan ogr2ogr yardımcı programını kullanabilirsiniz . -sqlSeçeneği aşağıdaki gibi kullanın :

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

Ek bir bonus olarak, verileri aynı anda farklı bir formata dönüştürebilir veya bir nerede cümlesi belirterek verilerinizi filtreleyebilirsiniz. Bu yöntemi kullanırsanız tüm çıktı alanlarını belirtmeniz gerekeceğini unutmayın (SELECT deyiminde bulunmayan alanlar çıktı dosyasından çıkarılır).


2
Ayrıca alan adlarını aşağıdakileri kullanarak listeleyebilirsinizogrinfo -so inputfile.shp inputfile
Mike T

Yan not: Bu yöntem yalnızca şekil dosyalarını dönüştürürken çalışır. Örneğin, GeoJSON veri biçimini kullanıyorsanız, önce bunu bir şekil dosyasına dönüştürmeniz, ardından -sqlbayrağı kullanarak başka bir dönüşüm yapmanız gerekir .
clhenrick

Ayrıca -dialect SQLITE seçeneğini eklemeniz gerekir, aksi takdirde ogr2ogr 6 hatası verir: output_file.shp en az bir özellik 1 alanı içermelidir
Dmitriy Litvinov
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.