He escrito este script que (ejecutado en MSYS) convierte un kml a shp y le aplica una reproyección. El shp resultante tiene entonces el mismo SRS que los shps que quiero recortar con él. Utilizo un bucle for para buscar los archivos shp en una determinada carpeta y luego quiero aplicar el recorte. La conversión arroja algunas advertencias despreciables (?) y produce un archivo shp que funciona.
Warning 6: Normalized/laundered field name: 'description' to 'descriptio'
Warning 6: Field timestamp create as date field, though DateTime requested.
Warning 6: Field begin create as date field, though DateTime requested.
Warning 6: Field end create as date field, though DateTime requested.
Warning 6: Normalized/laundered field name: 'altitudeMode' to 'altitudeMo'
Sin embargo, la segunda parte no funciona (no hay errores, sólo la información de uso de ogr2ogr como aparece si hay errores sintácticos)
cd D:/GIS_DataBase/GIS_Tirol/Scharnitz
outdir=D:/GIS_DataBase/GIS_Tirol/Scharnitz/Data
indir=D:/GIS_DataBase/GIS_Tirol/Tirol_Verbreitungskarten/Verbreitungs_Daten
mkdir outdir
# reproject and convert clipsource to desired SRS and shpfile-format
ogr2ogr -overwrite -skipfailures -append -f "ESRI Shapefile" -t_srs EPSG:31254 clpsrcfile.shp scharnitz_gem_grenze.kml
# clip all files in indir and save to outdir
for x in $indir/*.shp
do ogrinfo -al $x | grep Extent
ls $x
ogr2ogr -clpsrc clpsrcfile.shp $outdir $x
done