Geospatial Commandline Tools
A collection of geospatial programs with commandline interface. The starting point of the list was this tweet which contains many useful responses.
Generic Vector & Raster
- GDAL/OGR - Powerful tools for conversion and processing of most geospatial formats.
- QGIS/qgis_process - Interface for accessing QGIS processing tools.
- GRASS - Execute GRASS algorithms.
- SAGA GIS - Execute SAGA GIS algorithms.
- Whitebox Tools - Execute geospatial algorithms.
Vector
- Fiona - Process vector data.
- shp2pgsql / pgsql2shp / shpdump Shapefile related tools.
- spatialite - A SQLite bases database for spatial data.
- topojson - Handling the TopoJSON format.
- geojsonhint - Validate GeoJSON files.
- csv2geojson - Convert CSV to GeoJSON.
- d3-geo - Geographic projections, spherical shapes and spherical trigonometry.
- d3-geo-projection - Extended geographic projections for d3-geo.
- geojson-merge - Merge multiple GeoJSON files.
- Mapshaper - Convert between Shapefile, GeoJSON, TopoJSON and CSV.
- geojsonio - Display GeoJSON files in the browser.
- wellknown - Handle WKT (well known text) geometries.
- ogr2postgis - Load vector data to PostGIS.
Raster & Remote Sensing
- Rasterio - Process raster data.
- libtiff - TIFF Library and Utilities.
- Orfeo ToolBox A toolbox for remote sensing.
- OpenDroneMap - Process drone imagery.
- TauDEM - a suite of Digital Elevation Model (DEM) tools.
- felicette - Download satellite images.
- eodag - Earth Observation Data Access Gateway.
- micmac - Photogrammetric suite.
- sat-search - Access SpatioTemporal Asset Catalog (STAC) API.
- PkTools - Utilities for image processing.
- go-spatial - Manipulation of geospatial data.
- stactools - Command line utility and Python library for STAC.
- gdal-exprtk - GDAL-based raster calculation with JavaScript and ExprTk expresssions.
- cogger - GeoTIFF to COG converter.
- geeup - Simple tool for Google Earth Engine uploads.
Rendering and Styling
- GMT - Display geospatial data.
- mapnik - Mapping Toolkit.
- GeoStyler - Conversion from and to various geospatial style formats.
- carto - Edit CartCSS styles.
- t-Rex - Creation and Serving of vector tiles.
- tippecanoe - Build vector tiles.
- mbgl-renderer - Static Renderer for MapboxGL.
- BareMaps - Creation of custom vector tiles.
- Mapproxy - Proxy for geospatial data.
- pygeoapi - A Python server implementation of the OGC API suite of standards.
- pg_tileserv - A PostGIS-only tile server in Go.
- pg_featureserv - Geospatial Feature Server for PostGIS in Go.
OpenStreetMap
- osmium - Powertool for any type of OpenStreetMap data processing.
- pyosmium - Utilities for updating OSM files.
- osm2pgsql - Load OpenStreetMap data in a PostgreSQL/PostGIS Database. Written in C++.
- osmprj - Import OSM data to Postgres and create reports.
- osmtogeojson - Convert OpenStreetMap XML to GeoJSON.
- Imposm - Load OpenStreetMap data in a PostgreSQL/PostGIS Database. Written in Go.
- osmctools - Convert, filter and update OpenStreetMap data files.
- osm-tags-transform - Transform tags in OSM files using Lua code.
- mapsplit - Split OSM data in to a portable tiled format.
- 99boundaries - Generate administrative boundaries from OpenStreetMap.
- gol - Build an OpenStreetMap database and perform queries.
Point Cloud
- PDAL - Point Data Abstraction Library.
- CloudCompare - Tools for processing point clouds.
- OPALS - Processing of airborn laser scanning.
- LAStools - Tools for processing point clouds.
Other
- PROJ - Converts coordinate reference systems.
- pyproj - Python interface to PROJ.
- GEOS - Performs geometric operations.
- pygeometa - Create geospatial metadata.
- MDAL - Mesh Data Abstraction Library.
- valhalla - Routing Engine.
- PCRaster - Software for environmental modelling.
- Cesium Terrain Builder - Create terrain tiles for use in the Cesium JavaScript library.
- geodiff - Handle differences in geospatial data.
- GeoGig - Geospatial version control.
- Kart - Geospatial version control.
- mergin - Python client module for access to Mergin and a command-line tool for access to data stored in Mergin.
- wetterdienst - Retrieve weather data from multiple sources.
Links
- Command-Line Cartography - Blog Post Series of Mike Bostock.
- Vector Tiles - Section about vector tile related CLI tools.
- Fiona/Rasterio Cheatsheet
- Talk: Are be going back to Command Line GIS
- Slides: Command-Line Geography