Відповідно до shp2pgsql
довідки, варіанти, які випадають , додають , створюють та готуються, є взаємовиключними. Отже, якщо я хочу створити таблицю з фігури, а потім додати кілька інших файлів форм, я роблю щось на зразок наступного, зберігаючи лічильник, щоб вказати, ми перебуваємо в режимі створення чи додавання.
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
Це працює, як очікувалося, але я часто замислювався, чи є простіший спосіб?