ऐसा करने के लिए, आपको i) को ToC से लेयर को हटाने की आवश्यकता होगी , ii) शेपफाइल (यानी, shp, dbf, shx, prj, और इसी तरह) के अनुरूप फ़ाइलों का नाम बदलें, और iii) नामांकित परत को लोड करें। QGIS। लेकिन हमें ऐसे वर्कफ़्लो को स्वचालित करने की आवश्यकता है!
यदि आप चरणों को देखते हैं, तो वे टेबल मैनेजर प्लगइन के समान हैं। इसलिए, मैंने शेपफाइल्स का नाम बदलने के लिए ऐसे प्लगइन के कोड को अनुकूलित किया, आप इसे यहां से डाउनलोड कर सकते हैं ।
आप इसे इस तरह से उपयोग कर सकते हैं (पहले यह देखने के लिए कि यह कैसे काम करता है एक छोटी बैकअप परियोजना के साथ प्रयास करें):
- ToC में अपनी QGIS परतों का नाम बदलें, इन नए नामों को आपके संबंधित Shapefiles नामों को अधिलेखित करने के लिए लिया जाएगा।
- अपने QGIS प्रोजेक्ट को उसी फ़ोल्डर में सहेजें, जैसा कि स्क्रिप्ट rename_shapefiles.py है
- QGIS पायथन कंसोल खोलें।
वहां अगला कोड स्निपेट कॉपी करें:
from rename_shapes import RenameShapefiles
for lyr in iface.mapCanvas().layers():
rn = RenameShapefiles( iface, lyr )
rn.doSave()
बस! मैंने इसे GNU / Linux, QGIS 2.6 पर परीक्षण किया है। ToC में परतों का क्रम कोड चलाने के बाद बदलता रहता है।
अगर आपके पास कोई मुद्दा है तो मुझे बताएं।
यदि आपको संरक्षित किए जाने के लिए लेयर ऑर्डर की आवश्यकता है, तो एक नया प्रश्न पूछें, शायद मैं इसे देख सकता हूं :)।