GDAL-VECTOR-EDIT(1) GDAL GDAL-VECTOR-EDIT(1)
نام (NAME)
gdal-vector-edit - ویرایش متادادههای یک مجموعه داده برداری
در نسخه 3.11 اضافه شد.
خلاصه دستور (SYNOPSIS)
Usage: gdal vector edit [OPTIONS]
ویرایش متادادههای یک مجموعه داده برداری.
آرگومانهای مکانی:
-i, --input مجموعه دادههای برداری ورودی [الزامی] [در خط لولهها در دسترس نیست]
-o, --output مجموعه داده برداری خروجی [الزامی] [در خط لولهها در دسترس نیست]
گزینههای عمومی:
-h, --help نمایش پیام راهنما و خروج
--json-usage نمایش نحوه استفاده به صورت سند JSON و خروج
--config = گزینه پیکربندی [قابل تکرار]
-q, --quiet حالت بیصدا (بدون نوار پیشرفت یا پیام هشدار) [در خط لولهها در دسترس نیست]
گزینهها:
-l, --layer, --input-layer نام لایه(های) ورودی [قابل تکرار] [در خط لولهها در دسترس نیست]
-f, --of, --format, --output-format قالب خروجی (مقدار "GDALG" مجاز است) [در خط لولهها در دسترس نیست]
--co, --creation-option = گزینه ساخت مجموعه داده [قابل تکرار] [در خط لولهها در دسترس نیست]
--lco, --layer-creation-option = گزینه ساخت لایه [قابل تکرار] [در خط لولهها در دسترس نیست]
--overwrite آیا رونویسی مجموعه داده خروجی موجود مجاز است [در خط لولهها در دسترس نیست]
--update آیا مجموعه داده موجود در حالت بهروزرسانی باز شود [در خط لولهها در دسترس نیست]
--overwrite-layer آیا رونویسی لایه خروجی موجود مجاز است [در خط لولهها در دسترس نیست]
--append آیا الحاق به لایه موجود مجاز است [در خط لولهها در دسترس نیست]
ناسازگار با --upsert
--output-layer نام لایه خروجی
--skip-errors نادیده گرفتن خطاها هنگام نوشتن عوارض [در خط لولهها در دسترس نیست]
--active-layer تنظیم لایه فعال (در صورت مشخص نشدن، تمام لایهها)
--geometry-type نوع هندسه لایه
--crs بازنویسی CRS (بدون تغییر پیشافکDefault)
--metadata = افزودن/بهروزرسانی آیتم متاداده مجموعه داده [قابل تکرار]
--unset-metadata حذف آیتم متاداده مجموعه داده [قابل تکرار]
--layer-metadata = افزودن/بهروزرسانی آیتم متاداده لایه [قابل تکرار]
--unset-layer-metadata حذف آیتم متاداده لایه [قابل تکرار]
--unset-fid حذف شناسه هر عارضه و نام ستون FID
گزینههای پیشرفته:
--if, --input-format قالبهای ورودی [قابل تکرار] [در خط لولهها در دسترس نیست]
--oo, --open-option = گزینههای باز کردن [قابل تکرار] [در خط لولهها در دسترس نیست]
--output-oo, --output-open-option = گزینههای باز کردن خروجی [قابل تکرار] [در خط لولهها در دسترس نیست]
--upsert بهروزرسانی یا درج (Upsert) عوارض (شامل 'append') [در خط لولهها در دسترس نیست]
ناسازگار با --append
توضیحات (DESCRIPTION)
از gdal vector edit میتوان برای ویرایش متادادههای یک مجموعه داده برداری
استفاده کرد: سیستم مرجع مختصات (CRS)، نوع هندسه لایه، متادادههای مجموعه
داده و لایه.
از edit همچنین میتوان به عنوان یک مرحله از gdal vector pipeline استفاده
نمود.
عوارض (features) دستنخورده باقی میمانند و تغییری نمیکنند.
خروجی GDALG (مجموعه داده برخط / استریمشده) (GDALG OUTPUT (ON-THE-FLY /
STREAMED DATASET))
این برنامه از سریالیسازی خط فرمان به عنوان یک فایل JSON با استفاده از
قالب خروجی GDALG پشتیبانی میکند. فایل حاصل را میتوان سپس با درایور
GDALG: GDAL Streamed Algorithm به عنوان یک مجموعه داده برداری باز کرد و
خط لوله مشخصشده را به صورت برخط / استریمشده اعمال نمود.
گزینههای اختصاصی برنامه (PROGRAM-SPECIFIC OPTIONS)
--crs
بازنویسی سیستم مرجع مختصات (CRS)، بدون بازپروژکت کردن عوارض.
سیستمهای مرجع مختصاتی که میتوان وارد کرد شامل هر موردی است که
توسط فراخوانی OGRSpatialReference::SetFromUserInput() پشتیبانی
میشود؛ از جمله CRS پیشافکنده EPSG، جغرافیایی یا مرکب (مانند
EPSG:4296)، تعریف متنی WKT از CRS، اعلانهای PROJ.4، یا نام یک
فایل .prj حاوی تعریف WKT CRS.
میتوان null یا none را برای حذف CRS موجود مشخص کرد.
--geometry-type
تغییر نوع هندسه لایه به یکی از مقادیر زیر: GEOMETRY، POINT،
LINESTRING، POLYGON، MULTIPOINT، MULTILINESTRING، MULTIPOLYGON،
GEOMETRYCOLLECTION، CURVE، CIRCULARSTRING، COMPOUNDCURVE،
SURFACE، CURVEPOLYGON، MULTICURVE، MULTISURFACE،
POLYHEDRALSURFACE یا TIN. پسوندهای Z، M یا ZM را میتوان به
مقادیر فوق اضافه کرد تا بعد فضایی مشخص شود. توجه داشته باشید که
هندسه خود عوارض تغییر داده نمیشود. بنابراین این گزینه میتواند
برای اصلاح نوع هندسه نامناسب در سطح لایه استفاده شود.
--layer-metadata =
افزودن/بهروزرسانی آیتم متاداده در سطح لایه.
--metadata =
افزودن/بهروزرسانی آیتم متاداده در سطح مجموعه داده.
--unset-fid
در نسخه 3.12 اضافه شد.
میتوان مشخص کرد تا از استفاده مجدد نام ستون FID و شناسههای عوارض
منبع برای لایه مقصد جلوگیری شود. این گزینه برای مثال هنگام
انتخاب عوارض منبع با عبارت ORDER BY میتواند مفید باشد.
--unset-metadata
حذف آیتم متاداده در سطح مجموعه داده.
--unset-layer-metadata
حذف آیتم متاداده در سطح لایه.
گزینههای استاندارد (STANDARD OPTIONS)
--active-layer
تنظیم لایه فعال. وقتی مشخص شود، تنها لایهای که با نامش مشخص شده
تحت پردازش قرار میگیرد و سایر لایهها تغییر نخواهند کرد. اگر این
گزینه مشخص نشود، تمامی لایهها پردازش خواهند شد.
--append
مجاز بودن الحاق عوارض به لایه(های) موجود. همچنین اگر مجموعه
داده خروجی هنوز وجود نداشته باشد، آن را ایجاد میکند.
--co, --creation-option =
بسیاری از قالبها یک یا چند گزینه اختیاری برای ساخت مجموعه داده
دارند که میتوان برای کنترل جزئیات فایل ایجادشده از آنها استفاده
کرد. برای مثال، درایور GeoPackage از گزینههای ساخت برای کنترل
نسخه پشتیبانی میکند.
قابل تکرار است.
گزینههای ساخت مجموعه داده در دسترس بسته به درایور قالب متفاوت
است و برخی قالبهای ساده هیچ گزینه ساختی ندارند. فهرستی از
گزینههای پشتیبانیشده برای یک قالب را میتوان با گزینه خط فرمان
--formats مشاهده کرد، اما مستندات مربوط به همان قالب منبع قطعی
اطلاعات درباره گزینههای ساخت درایور است. برای گزینههای ساخت
مجاز هر قالب به مستندات اختصاصی قالب Vector drivers مراجعه کنید.
توجه داشته باشید که گزینههای ساخت مجموعه داده با گزینههای ساخت
لایه متفاوت هستند.
--if, --input-format
نام قالب/درایور برای تلاش در باز کردن فایل(های) ورودی. معمولاً
نیازی به مشخص کردن آن نیست، اما در صورتی که تشخیص خودکار درایور
نتواند درایور مناسب را انتخاب کند، میتوان از این گزینه برای دور
زدن تشخیص خودکار استفاده کرد. این گزینه میتواند چندین بار برای
تعیین چندین درایور نامزد تکرار شود. توجه داشته باشید که این کار
درایورها را مجبور به باز کردن مجموعه داده نمیکند؛ بهویژه برخی
درایورها نیازمندیهایی برای پسوند فایل دارند.
قابل تکرار است.
--input-layer
نام یک یا چند لایه را برای پردازش مشخص میکند. به طور پیشفرض، همه
لایهها پردازش میشوند. برای خواندن و نوشتن تمام لایهها اما پردازش
تنها یک زیرمجموعه، از --active-layer استفاده کنید.
--lco, --layer-creation-option =
بسیاری از قالبها یک یا چند گزینه اختیاری ساخت لایه دارند که
میتوان از آنها برای کنترل جزئیات لایه ایجادشده استفاده کرد. برای
مثال، درایور GeoPackage از گزینههای ساخت لایه برای کنترل شناسه
عارضه یا نام ستون هندسه، تنظیم شناسه یا توضیحات و غیره پشتیبانی
میکند.
قابل تکرار است.
گزینههای ساخت لایه موجود بسته به درایور قالب متفاوت است و برخی
قالبهای ساده اصلاً هیچ گزینه ساخت لایهای ندارند. فهرستی از
گزینههای پشتیبانیشده برای یک قالب را میتوان با گزینه خط فرمان
--formats فهرست کرد، اما مستندات همان قالب منبع قطعی اطلاعات
درباره گزینههای ساخت درایور است. برای گزینههای مجاز ساخت هر
قالب به مستندات اختصاصی قالب Vector drivers مراجعه کنید.
توجه داشته باشید که گزینههای ساخت لایه با گزینههای ساخت مجموعه
داده تفاوت دارند.
--oo, --open-option =
گزینه باز کردن مجموعه داده (مختص هر قالب).
قابل تکرار است.
-f, --of, --format, --output-format
تعیین قالب برداری خروجی مورد استفاده. مقادیر مجاز را میتوان با
دستور زیر دریافت کرد: gdal --formats | grep vector | grep rw |
sort
--output-layer
نام لایهای را مشخص میکند که عوارض در آن نوشته خواهند شد. در صورت
عدم تعیین، نام لایههای خروجی مشابه نام لایههای ورودی خواهد بود.
--output-open-option, --output-oo =
در نسخه 3.12 اضافه شد.
گزینه باز کردن مجموعه داده برای مجموعه داده خروجی (مختص هر
قالب).
قابل تکرار است.
--overwrite
اجازه دادن به برنامه برای بازنویسی و جایگزینی فایل یا مجموعه
داده مقصد موجود. در غیر این صورت، به طور پیشفرض، gdal در صورتی
که فایل یا مجموعه داده مقصد از قبل وجود داشته باشد با خطا متوقف
میشود.
--overwrite-layer
مجاز بودن بازنویسی لایه برداری خروجی موجود.
--skip-errors
در نسخه 3.12 اضافه شد.
نادیده گرفتن خطاهای ناشی از عدم موفقیت در نوشتن عارضه(ها). توجه
داشته باشید که این گزینه اندازه واحد تراکنش را به یک عارضه در هر
زمان تنظیم میکند که ممکن است باعث کندی شدید هنگام درج در
پایگاههای داده شود.
--update
باز کردن یک مجموعه داده خروجی موجود در حالت بهروزرسانی.
--upsert
در نسخه 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 وجود داشته
باشد که کلید اصلی عدد صحیح نباشد.
کد وضعیت خروجی (RETURN STATUS CODE)
برنامه در صورت موفقیت کد وضعیت 0 و در صورت بروز خطا مقداری غیر از صفر
برمیگرداند (خطاهای غیرمسدودکننده که به صورت هشدار صادر میشوند به عنوان
اجرای موفقیتآمیز در نظر گرفته میشوند).
مثالها (EXAMPLES)
مثال ۱: تغییر CRS یک فایل GeoPackage (بدون بازپروژکت کردن آن) و نوع هندسه
آن
$ gdal vector edit --crs=EPSG:4326 --geometry-type=POLYGONZM in.gpkg out.gpkg --overwrite
مثال ۲: اعمال یک CRS به یک Shapefile
اگر یک Shapefile فایل .prj مرتبط خود را نداشته باشد، میتوان آن را به
صورت زیر ایجاد کرد:
$ gdal vector edit --crs=EPSG:3857 in.shp out.shp
نویسنده (AUTHOR)
Even Rouault
حق نشر (COPYRIGHT)
1998-2026
August 18, 2026 GDAL-VECTOR-EDIT(1)