Основний сценарій для рекурсивного повторення підпапок і об'єднання всіх файлів форм в одну - це:
#!/bin/bash
consolidated_file="./consolidated.shp"
for i in $(find . -name '*.shp'); do
if [ ! -f "$consolidated_file" ]; then
# first file - create the consolidated output file
ogr2ogr -f "ESRI Shapefile" $consolidated_file $i
else
# update the output file with new file content
ogr2ogr -f "ESRI Shapefile" -update -append $consolidated_file $i
fi
done
Hoverer у всіх прикладах по всій мережі Інтернету я помітив, що для випадку, коли я оновлюю вихідний файл, -nln
додається тег, наприклад:
ogr2ogr -f "ESRI Shapefile" -update -append $consolidated_file $i -nln merged
Згідно з документацією сказано:
Призначте альтернативне ім’я новому шару
І я помітив, що він створює тимчасовий файл з назвою "злитий", і в кінці циклу файл ідентичний останньому файлу форми, який я об'єднав.
Я не розумію, навіщо мені це потрібно? Тому що мені вдалося об’єднатися успішно без цього тегу.