하위 폴더에서 재귀 적으로 반복하고 모든 모양 파일을 단일 파일로 병합하기위한 기본 스크립트는 다음과 같습니다.
#!/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
웹 주변의 모든 예제를 마우스로 가져 가면 출력 파일을 업데이트하는 경우 -nln
태그가 추가 되는 것을 알았습니다 .
ogr2ogr -f "ESRI Shapefile" -update -append $consolidated_file $i -nln merged
설명서에 따르면 다음과 같이 말합니다.
새 레이어에 대체 이름을 지정하십시오
그리고 "merged"라는 임시 shapefile을 만드는 것으로 나타났습니다. 루프가 끝나면 파일이 병합 한 마지막 shapefile과 동일합니다.
왜 이것이 필요한지 모르겠습니다. 이 태그없이 성공적으로 병합했기 때문입니다.