Forum QGIS

Pełna wersja: Zbiorowa konwersja *.gml do *.shp za pomocą ogr2ogr
Aktualnie przeglądasz uproszczoną wersję forum. Kliknij tutaj, by zobaczyć wersję z pełnym formatowaniem.
Jak za pomocą jednej komendy w konsoli przekonwertować wiele plików .gml na pliki (bądź jeden plik) *.shp?. Jakiś skrypt trzeba napisać? Mam te pliki w jednym katalogu, zrobiłem sobie też listę w pliku tekstowym.
Działanie takie łatwo daje się zrobić w drugą stronę (shp->gml) dla całego katalogu z plikami shp poleceniem:
Kod:
ogr2ogr -f GML plik.gml /home/tomasz/katalog/z/plikami/shp
Dla gml->shp już się niestety nie udaje.
Ja pod windowsem do działań na wielu plikach używam pętli 'for'. W Linuksie robi się chyba podobnie. W necie na pewno znajdziesz jakiś przykład.
(23-12-2010, 16:23)tomalos napisał(a): [ -> ]Dla gml->shp już się niestety nie udaje.

Katalog z wieloma plikami *.shp jest traktowany przez OGR jak jeden "dataset" (zna ktoś ładny polski odpowiednik tego terminu?) a kolejne Shapefile to jego warstwy. Obsługa formatu gml oparta jest wyłącznie na pliku.

W Shellu można to zrobić tak:

Kod:
for i in *.gml; do ogr2ogr `basename $i .gml`.shp $i; done

Pod cmd Windows nie wiem. Ja bym zainstalował MSys i zrobił jak wyżej Smile.
Dzięki, o to mi chodziło. Tak kombinowałem ale nie mając pojęcia było to trochę strzelanie w ciemno.
Aha... ja nie mam Windowsa Big Grin Ale terminal nadal nie jest moim dobrym znajomym Sad