GDAL-VECTOR-RENAME-LAYER(1) GDAL GDAL-VECTOR-RENAME-LAYER(1)

gdal-vector-rename-layer - تغییر نام لایه یا لایه‌های یک مجموعه‌داده برداری

افزوده‌شده در نسخه 3.13.

Usage: gdal vector rename-layer [OPTIONS] <INPUT> <OUTPUT>
تغییر نام لایه یا لایه‌های یک مجموعه‌داده برداری.
آرگومان‌های مکانی:
  -i, --input <INPUT>                                  مجموعه‌داده‌های برداری ورودی [الزامی] [در خطوط لوله در دسترس نیست]
  -o, --output <OUTPUT>                                مجموعه‌داده برداری خروجی [الزامی] [در خطوط لوله در دسترس نیست]
گزینه‌های عمومی:
  -h, --help                                           نمایش پیام راهنما و خروج
  --json-usage                                         نمایش نحوه استفاده در قالب سند JSON و خروج
  --config <KEY>=<VALUE>                               گزینه پیکربندی [تکرارپذیر]
  -q, --quiet                                          حالت بی‌صدا (بدون نوار پیشرفت یا پیام هشدار) [در خطوط لوله در دسترس نیست]
گزینه‌ها:
  -f, --of, --format, --output-format <OUTPUT-FORMAT>  قالب خروجی (مقدار "GDALG" مجاز است) [در خطوط لوله در دسترس نیست]
  --co, --creation-option <KEY>=<VALUE>                گزینه ایجاد [تکرارپذیر] [در خطوط لوله در دسترس نیست]
  --lco, --layer-creation-option <KEY>=<VALUE>         گزینه ایجاد لایه [تکرارپذیر] [در خطوط لوله در دسترس نیست]
  --overwrite                                          امکان بازنویسی مجموعه‌داده خروجی موجود [در خطوط لوله در دسترس نیست]
  --update                                             باز کردن مجموعه‌داده موجود در حالت به‌روزرسانی [در خطوط لوله در دسترس نیست]
  --overwrite-layer                                    امکان بازنویسی لایه خروجی موجود [در خطوط لوله در دسترس نیست]
  --append                                             امکان الحاق به لایه موجود [در خطوط لوله در دسترس نیست]
                                                       ناسازگار با --upsert
  --output-layer <OUTPUT-LAYER>                        نام لایه خروجی
  --skip-errors                                        نادیده گرفتن خطاها هنگام نوشتن عوارض [در خطوط لوله در دسترس نیست]
  -l, --input-layer <INPUT-LAYER>                      نام لایه ورودی
  --ascii                                              اجبار نام‌ها به استفاده از نویسه‌های ASCII
  --lower-case                                         اجبار نام‌ها به حروف کوچک (فقط روی نویسه‌های ASCII)
  --filename-compatible                                اجبار نام‌ها به قابل‌استفاده بودن به عنوان نام فایل
  --reserved-characters <RESERVED-CHARACTERS>          نویسه یا نویسه‌های رزروشده جهت حذف
  --replacement-character <REPLACEMENT-CHARACTER>      نویسه جایگزین در صورت عدم امکان تبدیل به ASCII
  --max-length <MAX-LENGTH>                            حداکثر طول نام‌های لایه
گزینه‌های پیشرفته:
  --if, --input-format <INPUT-FORMAT>                  قالب‌های ورودی [تکرارپذیر] [در خطوط لوله در دسترس نیست]
  --oo, --open-option <KEY>=<VALUE>                    گزینه‌های باز کردن [تکرارپذیر] [در خطوط لوله در دسترس نیست]
  --output-oo, --output-open-option <KEY>=<VALUE>      گزینه‌های باز کردن خروجی [تکرارپذیر] [در خطوط لوله در دسترس نیست]
  --upsert                                             به‌روزرسانی یا درج عوارض (مستلزم 'append') [در خطوط لوله در دسترس نیست]
                                                       ناسازگار با --append

دستور gdal vector rename-layer می‌تواند برای تغییر نام لایه یا لایه‌ها استفاده شود.

این دستور دو حالت دارد:

  • حالتی که در آن کاربر یک لایه منفرد را با --output-layer به یک نام مشخص تغییر می‌دهد، که در صورت وجود بیش از یک لایه با --input-layer ترکیب می‌شود.
  • حالت دیگری که در آن کاربر می‌تواند عملیات‌های گوناگونی را برای دگرگون‌سازی نام‌های لایه‌ها اعمال کند:
  • اجبار نویسه‌ها به ASCII: --ascii
  • اجبار نویسه‌ها به حروف کوچک: --lower-case
  • اجبار سازگاری با نام‌های فایل: --filename-compatible
  • حذف یا جایگزینی نویسه‌ها از یک فهرست نویسه‌های رزروشده: --reserved-characters
  • کوتاه‌سازی به حداکثر تعداد مشخصی از نویسه‌ها: --max-length

برای گزینه‌های --filename-compatible و --reserved-characters، نویسه‌های ناسازگار حذف می‌شوند، مگر اینکه --replacement-character مشخص شده باشد.

در این حالت، یکتایی نام‌های لایه‌ها نیز با الحاق _{N} (که در آن N یک شماره ترتیبی است) تضمین می‌شود. در صورتی که --max-length روی مقدار بسیار پایینی تنظیم شده باشد، ممکن است یکتایی حاصل نشود.

این زیردستور همچنین به عنوان یک مرحله بالقوه در gdal vector pipeline در دسترس است.

نام لایه ورودی. باید همراه با --output-layer استفاده شود.
نام لایه خروجی. اگر چندین لایه ورودی وجود دارد، --output-layer نیز باید مشخص شود.
اجبار نویسه‌ها به ASCII. در حال حاضر فقط نویسه‌های دارای اعراب در مجموعه‌های نویسه Latin 1 Supplement و Latin Extended A دارای جایگزین معقول ASCII هستند. سایر نویسه‌های غیر ASCII حذف می‌شوند یا با نویسه جایگزین تعیین‌شده توسط --replacement-character جایگزین خواهند شد.
اجبار نویسه‌ها به حروف کوچک. در حال حاضر فقط نویسه‌های بزرگ ASCII جایگزین می‌شوند. این گزینه در صورت مشخص شدن --ascii، پس از آن اعمال می‌شود.
اجبار نام‌های لایه‌ها به سازگار بودن با نام فایل در لینوکس، ویندوز یا مک، مستقل از اینکه این دستور روی چه سیستم‌عاملی اجرا می‌شود.
نویسه یا نویسه‌های رزروشده جهت حذف یا جایگزینی با نویسه جایگزین تعیین‌شده در --replacement-character.
نویسه جایگزین در صورتی که تبدیل به ASCII امکان‌پذیر نباشد یا برای جایگزینی نویسه‌های رزروشده.
کوتاه‌سازی به حداکثر تعداد نویسه مشخص.

امکان الحاق عوارض به لایه یا لایه‌های موجود را فراهم می‌کند. در صورتی که مجموعه‌داده خروجی هنوز وجود نداشته باشد، آن را نیز ایجاد می‌کند.
بسیاری از قالب‌ها یک یا چند گزینه اختیاری ایجاد مجموعه‌داده دارند که می‌توانند برای کنترل ویژگی‌های خاص فایل ایجادشده استفاده شوند. برای مثال، درایور GeoPackage از گزینه‌های ایجاد برای کنترل نسخه پشتیبانی می‌کند.

می‌تواند تکرار شود.

گزینه‌های ایجاد مجموعه‌داده در دسترس بسته به درایور قالب متفاوت است و برخی قالب‌های ساده اصلاً گزینه ایجادی ندارند. فهرستی از گزینه‌های پشتیبانی‌شده برای یک قالب را می‌توان با گزینه خط فرمان --formats مشاهده کرد، اما مستندات خود قالب، منبع معتبر اطلاعات درباره گزینه‌های ایجاد درایور است. برای مشاهده گزینه‌های مجاز ایجاد برای هر قالب، به مستندات اختصاصی قالب در بخش Vector drivers مراجعه کنید.

توجه داشته باشید که گزینه‌های ایجاد مجموعه‌داده با گزینه‌های ایجاد لایه متفاوت هستند.

نام قالب یا درایور جهت تلاش برای باز کردن فایل یا فایل‌های ورودی. به طور کلی مشخص کردن آن الزامی نیست، اما می‌توان از آن برای چشم‌پوشی از تشخیص خودکار درایور، در زمان‌هایی که در انتخاب درایور مناسب ناموفق است، استفاده کرد. این گزینه می‌تواند چندین بار برای تعیین چندین درایور کاندید تکرار شود. توجه داشته باشید که این گزینه آن درایورها را به باز کردن مجموعه‌داده مجبور نمی‌کند؛ به ویژه برخی درایورها الزامات خاصی روی پسوند فایل دارند.

می‌تواند تکرار شود.

بسیاری از قالب‌ها یک یا چند گزینه اختیاری ایجاد لایه دارند که می‌توانند برای کنترل ویژگی‌های خاص لایه ایجادشده به کار روند. برای مثال، درایور GeoPackage از گزینه‌های ایجاد لایه برای کنترل شناسه عارضه یا نام ستون هندسه، تنظیم شناسه یا توضیحات و غیره پشتیبانی می‌کند.

می‌تواند تکرار شود.

گزینه‌های ایجاد لایه در دسترس بسته به درایور قالب متفاوت است و برخی قالب‌های ساده اصلاً گزینه ایجاد لایه ندارند. فهرستی از گزینه‌های پشتیبانی‌شده برای یک قالب را می‌توان با گزینه خط فرمان --formats مشاهده کرد، اما مستندات خود قالب، مرجع اصلی اطلاعات درباره گزینه‌های ایجاد درایور است. برای مشاهده گزینه‌های مجاز ایجاد لایه برای هر قالب، به مستندات اختصاصی در بخش Vector drivers مراجعه کنید.

توجه داشته باشید که گزینه‌های ایجاد لایه با گزینه‌های ایجاد مجموعه‌داده متفاوت هستند.

گزینه باز کردن مجموعه‌داده (وابسته به قالب).

می‌تواند تکرار شود.

تعیین قالب برداری خروجی مورد استفاده. مقادیر مجاز با اجرای دستور زیر قابل مشاهده است: gdal --formats | grep vector | grep rw | sort
نام لایه‌ای را مشخص می‌کند که عوارض در آن نوشته خواهند شد. در صورت عدم تعیین، نام‌های لایه خروجی همانند نام‌های لایه ورودی خواهند بود.
افزوده‌شده در نسخه 3.12.

گزینه باز کردن مجموعه‌داده برای مجموعه‌داده خروجی (وابسته به قالب).

می‌تواند تکرار شود.

اجازه دادن به برنامه برای بازنویسی فایل یا مجموعه‌داده هدف موجود. در غیر این صورت، به طور پیش‌فرض، اگر فایل یا مجموعه‌داده هدف از قبل وجود داشته باشد، gdal خطا می‌دهد.
--overwrite-layer
امکان بازنویسی لایه برداری خروجی موجود را فراهم می‌کند.
افزوده‌شده در نسخه 3.12.

نادیده گرفتن خطاهای رخ‌داده هنگام نوشتن عوارض. توجه داشته باشید که این گزینه اندازه واحد تراکنش را به یک عارضه در هر لحظه تنظیم می‌کند، که ممکن است هنگام درج در پایگاه‌های داده باعث کاهش شدید سرعت شود.

باز کردن یک مجموعه‌داده خروجی موجود در حالت به‌روزرسانی.
افزوده‌شده در نسخه 3.12.

نوعی دیگر از --append که در آن عملیات OGRLayer::UpsertFeature() برای درج یا به‌روزرسانی عوارض به جای الحاق با OGRLayer::CreateFeature() استفاده می‌شود.

این قابلیت در حال حاضر تنها در چند درایور پیاده‌سازی شده است: GPKG -- GeoPackage vector، Elasticsearch: Geographically Encoded Objects for Elasticsearch و MongoDBv3 (درایورهایی که upsert را پیاده‌سازی می‌کنند قابلیت GDAL_DCAP_UPSERT را اعلام می‌کنند).

عملیات upsert از FID عارضه ورودی، در صورت تنظیم بودن (و زمانی که نام ستون FID یک رشته خالی نباشد)، به عنوان کلید جهت به‌روزرسانی عوارض موجود استفاده می‌کند. بسیار حیاتی است اطمینان حاصل شود که مقادیر FID در لایه‌های مبدأ و مقصد سازگار هستند.

برای درایور GPKG، همچنین امکان upsert عوارضی که FID آن‌ها تنظیم نشده یا بی‌اهمیت است وجود دارد (گزینه --unset-fid از gdal vector edit می‌تواند برای نادیده گرفتن FID از عارضه مبدأ استفاده شود)، در صورتی که یک ستون با قید UNIQUE وجود داشته باشد که کلید اصلی عددی صحیح نباشد.

این برنامه در صورت موفقیت کد وضعیت 0 و در صورت بروز خطا مقدار غیر صفر بازمی‌گرداند (خطاهای غیرمسدودکننده که به عنوان هشدار صادر می‌شوند، اجرای موفقیت‌آمیز در نظر گرفته می‌شوند).

$ gdal vector rename-layer input.gpkg output.gpkg --input-layer "name with space" --output-layer "without_space"

$ gdal vector rename-layer input.gpkg output_shp_directory --output-format "ESRI Shapefile" --ascii --lower-case --filename-compatible --reserved-characters " "

Even Rouault <even.rouault@spatialys.com>

1998-2026

August 18, 2026