Làm cách nào để truy cập siêu dữ liệu Shapefile bằng OGR?


12

Tôi đang cố gắng sử dụng ogrinfo để có được một số chi tiết về một shapefile mà tôi đã tải xuống. Hiện tại, cách duy nhất tôi biết cách thực hiện việc này là tải nó vào QGIS và nhấp thủ công xung quanh để tìm bất kỳ thông tin nào trên đó, như mở bảng thuộc tính.

Tôi chỉ muốn có thể thấy bất kỳ siêu dữ liệu nào được gắn thẻ cùng với các tính năng. Nếu tôi làm:

ogrinfo -al USA_adm0.shp

Tôi có thể thấy lúc đầu có rất nhiều thông tin hữu ích, nhưng sau đó nó bay qua với tất cả các dữ liệu tính năng.

Ai đó có thể giúp tôi không?

BIÊN TẬP

Đây là những gì tôi nhận được trên máy Mac của mình bằng cách sử dụng cờ -ro và -so, dường như không giúp ích nhiều.

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

1
Có nhiều cách khác nhau để bạn có thể xem thông tin này theo cách dễ hiểu, nhưng điều này sẽ phụ thuộc vào hệ điều hành của bạn. Ví dụ, bạn có thể chuyển đầu ra thành một tệp hoặc sử dụng tính năng phân trang của dòng bash / dòng lệnh của bạn. Chúng tôi cần thêm thông tin về HĐH của bạn và nơi bạn đang chạy lệnh.
Devdatta Tengshe

1
Liên quan đến phần EDIT của bạn, đừng quên xem xét kỹ việc sử dụng ogrinfo --helpnơi mà nó cần bạn chỉ định ogrinfo datasource_name layervà bạn đã quên thêm một layer(vì vậy nó đã liệt kê các lớp cho bạn). Sử dụng -al, nó sẽ liệt kê thông tin trên Tất cả các Lớp mà không cần bạn chỉ định một lớp.
SaultDon

Xin chào dvreed77, bạn đã giải quyết vấn đề này? dường như không có câu trả lời nào cho chủ đề này đề cập đến thực tế là -ro -sonó không làm được gì nhiều. Tôi đang gặp vấn đề tương tự.
Vlad

1
Xin chào @Vlad, -geom=NOlá cờ đã lừa tôi
dvreed77

Câu trả lời:


17

ogrinfo có thể rút ngắn đáng kể đầu ra bằng cách sử dụng -socờ.

-so: Tóm tắt Chỉ: liệt kê các tính năng, chỉ hiển thị thông tin tóm tắt như phép chiếu, lược đồ, số lượng tính năng và phạm vi.

Vì vậy, ogrinfo -ro -so file.shpnên đưa ra một bản tóm tắt của siêu dữ liệu.

-al: Liệt kê tất cả các tính năng của tất cả các lớp (được sử dụng thay vì phải đặt tên lớp làm đối số).

Mặt khác chắc chắn sẽ cung cấp cho bạn rất nhiều thông tin nếu được sử dụng bởi chính nó!

Và nếu bạn muốn xem siêu dữ liệu cho cá nhân hay một loạt các tính năng, có -fid, -where-sqlcờ mà làm điều đó.

Cuối cùng, -geomsẽ hoạt động như một chuyển đổi chính cho thông tin hình học.

-geom = {CÓ / KHÔNG / TÓM TẮT}: (bắt đầu bằng GDAL 1.6.0) Nếu được đặt thành NO, kết xuất tính năng sẽ không hiển thị hình học. Nếu được đặt thành TÓM TẮT, chỉ một bản tóm tắt về hình học sẽ được hiển thị. Nếu được đặt thành CÓ, hình học sẽ được báo cáo ở định dạng OGC WKT đầy đủ. Giá trị mặc định là CÓ.

Có một FAQVector Wiki với các ví dụ cho các tiện ích dòng lệnh GDAL cũng cung cấp một số mẹo khác =)


Cảm ơn SaultDon. Tôi đã chỉnh sửa bài đăng của mình để cho bạn thấy điều gì xảy ra khi tôi thử -socờ
dvreed77

1
Có vẻ như -geom=NOđó là điều mà tôi đang mong đợi. Cảm ơn!
dvreed77

7

Bạn có thể thử:

ogrinfo -al USA_adm0.shp >> output.txt

Tất cả thông tin sẽ được chuyển hướng vào một tệp văn bản được gọi output.txttrong thư mục mà lệnh được gọi (nhưng cũng có thể sử dụng đường dẫn tuyệt đối hoặc tương đối phong phú hơn)


HOẶC LÀ; > ogrinfo -al USA_adm0.shp | đầu -30 (30 dòng trên cùng)
Gagan
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.