Selon l' shp2pgsql
aide, les options de suppression , d' ajout , de création et de préparation s'excluent mutuellement. Donc, si je veux créer un tableau à partir d'une forme puis ajouter plusieurs autres fichiers de formes, je fais quelque chose comme ceci, en gardant un compteur pour indiquer si nous sommes en mode création ou ajout.
cnt=0
for shp in $(ls *.shp); do
if [ $cnt -eq 0 ] ; then
shp2pgsql -s 27700 -c $shp schema.table_name | psql -h localhost db
else
shp2pgsql -s 27700 -a $shp schema.table_name | psql -h localhost db
fi
((cnt++))
done
Cela fonctionne, comme prévu, mais je me suis souvent demandé s'il existait un moyen plus simple?