Theo sự shp2pgsql
giúp đỡ, các tùy chọn thả , nối , tạo và chuẩn bị là loại trừ lẫn nhau. Vì vậy, nếu tôi muốn tạo một bảng từ một hình dạng và sau đó nối thêm nhiều shapefile khác, tôi làm một cái gì đó như sau, giữ một bộ đếm để cho biết chúng ta đang ở chế độ tạo hay chắp thêm.
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
Điều này hoạt động, như mong đợi, nhưng tôi thường tự hỏi nếu có một cách đơn giản hơn?