Для цього вам потрібно буде i) видалити шар з ToC, ii) перейменувати файли, які відповідають Shapefile (тобто, shp, dbf, shx, prj тощо) та iii) завантажити перейменований шар у QGIS. Але нам потрібно автоматизувати такий робочий процес!
Якщо ви подивитеся на кроки, вони схожі на те, що робить плагін Table Manager. Отже, я адаптував такий код плагіна для перейменування Shapefiles, ви можете завантажити його звідси .
Ви можете використовувати його таким чином (спочатку спробуйте з невеликим резервним проектом, щоб побачити, як він працює):
- Перейменуйте ваші шари QGIS в ToC, ці нові імена будуть замінені відповідними іменами Shapefiles.
- Збережіть проект QGIS у тій же папці, що і сценарій rename_shapefiles.py
- Відкрийте консоль QGIS Python.
Скопіюйте туди наступний фрагмент коду:
from rename_shapes import RenameShapefiles
for lyr in iface.mapCanvas().layers():
rn = RenameShapefiles( iface, lyr )
rn.doSave()
Це воно! Я перевірив це на GNU / Linux, QGIS 2.6. Порядок шарів у ToC змінюється після запуску коду.
Повідомте мене, якщо у вас є якісь проблеми.
Якщо вам потрібно зберегти порядок шару, задайте нове запитання, можливо, я можу це переглянути :).