I’ve been playing around with GIS software for a couple of weeks now, and i’ve seen alot of datasources using tiled .shp files (instead of all the data in one huge .shp file, the data is split into “square” tiles). If you want to do stuff with that data, you sometimes want it in one .shp file, so here is a very simple script to merge the files to one:
#!/usr/bin/bash for i in *shp; do ogr2ogr -f 'ESRI Shapefile' -update -append merge.shp $i -nln merge; done
It just does a for loop over all shp files, and uses GDAL to merge them.
This will create a merge.shp file with a layer named “merge” containing all the data from other shapefiles.
PS: this works with shapefiles of the same type (eg. all polygon or all points).
PPS: this is mostly a reminder for me, since i will probably forget the merge command, and I dont want to lose any more time googling it.