उप-फ़ोल्डरों पर पुनरावृत्ति को पुन: व्यवस्थित करने और सभी आकृतिफलों को एक में मिलाने के लिए मूल स्क्रिप्ट है:
#!/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
प्रलेखन के अनुसार यह कहता है:
नई परत के लिए एक वैकल्पिक नाम असाइन करें
और मैंने देखा कि यह "मर्ज" नामक एक अस्थायी शेपफाइल बनाता है, और लूप के अंत में फाइल पिछले शेपफाइल मैं विलय के समान है।
मुझे समझ नहीं आता कि मुझे इसकी आवश्यकता क्यों है? क्योंकि मैं इस टैग के बिना सफलतापूर्वक विलय करने में सफल रहा।