Los archivos de forma solo pueden tener un tipo de geometría, pero muchos otros formatos (kml, geojson) pueden tener varios tipos.
Al convertir a shapefiles, ¿es posible decirle a ogr2ogr que cree múltiples shapefiles, uno para cada tipo?
Parece que la opción "-where" podría ser útil, pero la página del manual no explica la sintaxis.
Por ejemplo, aquí hay un comando que falla:
$ wget http://a841-tfpweb.nyc.gov/jackson-heights/wp-content/themes/tfp/kml/transit.kml
$ ogr2ogr -f "ESRI Shapefile" transit.shp transit.kml
Warning 6: Normalized/laundered field name: 'Description' to 'Descriptio'
ERROR 1: Attempt to write non-linestring (POINT) geometry to ARC type shapefile.
ERROR 1: Terminating translation prematurely after failed
translation of layer Transit (use -skipfailures to skip errors)