Как получить доступ к метаданным Shapefile, используя OGR?


12

Я пытаюсь использовать ogrinfo, чтобы получить некоторые подробности о шейп-файле, который я скачал. В настоящее время единственный способ, которым я знаю, как это сделать, это загрузить его в QGIS и вручную щелкнуть по нему, чтобы найти любую информацию о нем, например открыть таблицу атрибутов.

Я просто хочу видеть метаданные, отмеченные вместе с функциями. Если я сделаю:

ogrinfo -al USA_adm0.shp

В начале я вижу много полезной информации, но затем она пролетает мимо всех данных функций.

Кто-нибудь может мне помочь?

РЕДАКТИРОВАТЬ

Это то, что я получаю на своем Mac с помощью флагов -ro и -so, похоже, это не сильно помогает.

->ogrinfo -ro -so USA_adm0.shp
INFO: Open of `USA_adm0.shp'
      using driver `ESRI Shapefile' successful.
1: USA_adm0 (Polygon)

1
Существуют различные способы, с помощью которых вы можете просматривать эту информацию в удобной для пользователя форме, но это будет зависеть от вашей ОС. Например, вы можете передать вывод в файл или использовать функцию разбивки на страницы в bash / командной строке. Нам нужна дополнительная информация о вашей ОС и о том, где вы запускаете команду.
Девдатта Тенгше

1
Что касается вашей части РЕДАКТИРОВАНИЯ, не забудьте внимательно изучить использование того, ogrinfo --helpчто вам нужно, чтобы указать, ogrinfo datasource_name layerи вы забыли добавить layer(так что вместо этого он перечислил слои для вас). Используя -al, он будет отображать информацию о всех слоях без указания слоя.
SaultDon

Привет dvreed77, вы решили эту проблему? в этой ветке, похоже, нет ответа, который бы решал проблему, -ro -soкоторая мало что дает. Я испытываю ту же проблему.
Влад

1
Привет @Vlad, -geom=NOфлаг сделал
свое дело

Ответы:


17

ogrinfo может значительно сократить вывод, используя -soфлаг.

-so: Только сводка: скрыть список объектов, показать только сводную информацию, такую ​​как проекция, схема, количество объектов и экстенты.

Поэтому ogrinfo -ro -so file.shpследует дать резюме метаданных.

И

-al: список всех объектов всех слоев (используется вместо указания имен слоев в качестве аргументов).

С другой стороны, безусловно, даст вам много информации, если использовать сам по себе!

И если вы хотите увидеть метаданные для индивидуального или целого ряда функций, есть -fid, -whereи -sqlфлаги , которые делают это.

Наконец, -geomбудет действовать как главный переключатель для информации о геометрии.

-geom = {ДА / НЕТ / РЕЗЮМЕ}: (начиная с GDAL 1.6.0) Если установлено значение НЕТ, дамп объекта не будет отображать геометрию. Если установлено значение SUMMARY, будет отображаться только краткое изложение геометрии. Если установлено значение YES, геометрия будет сообщаться в полном формате OGC WKT. Значением по умолчанию является ДА.

Существует FAQVector Wiki с примерами утилит командной строки GDAL, который также дает некоторые другие советы =)


Спасибо SaultDon. Я отредактировал свой пост, чтобы показать вам, что происходит, когда я пытаюсь -so
пометить

1
Кажется, -geom=NOэто то, чего я ожидал. Благодаря!
dvreed77

7

Вы можете попробовать:

ogrinfo -al USA_adm0.shp >> output.txt

Вся информация будет перенаправлена ​​в текстовый файл, вызываемый output.txtв папке, в которой была вызвана команда (но также можно использовать более богатый относительный или абсолютный путь)


ИЛИ ЖЕ; > ogrinfo -al USA_adm0.shp | голова -30 (верхние 30 строк)
Гаган
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.