GDAL-VECTOR-CONVERT(1) GDAL GDAL-VECTOR-CONVERT(1)

gdal-vector-convert - تبدیل مجموعه‌داده‌های برداری

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

Usage: gdal vector convert [OPTIONS] <INPUT> <OUTPUT>
Convert a vector dataset.
Positional arguments:
  -i, --input <INPUT>                                  Input vector datasets [required] [not available in pipelines]
  -o, --output <OUTPUT>                                Output vector dataset [required] [not available in pipelines]
Common Options:
  -h, --help                                           Display help message and exit
  --json-usage                                         Display usage as JSON document and exit
  --config <KEY>=<VALUE>                               Configuration option [may be repeated]
  -q, --quiet                                          Quiet mode (no progress bar or warning message) [not available in pipelines]
Options:
  -l, --layer, --input-layer <INPUT-LAYER>             Input layer name(s) [may be repeated] [not available in pipelines]
  -f, --of, --format, --output-format <OUTPUT-FORMAT>  Output format ("GDALG" allowed) [not available in pipelines]
  --co, --creation-option <KEY>=<VALUE>                Creation option [may be repeated] [not available in pipelines]
  --lco, --layer-creation-option <KEY>=<VALUE>         Layer creation option [may be repeated] [not available in pipelines]
  --overwrite                                          Whether overwriting existing output dataset is allowed [not available in pipelines]
  --update                                             Whether to open existing dataset in update mode [not available in pipelines]
  --overwrite-layer                                    Whether overwriting existing output layer is allowed [not available in pipelines]
  --append                                             Whether appending to existing layer is allowed [not available in pipelines]
                                                       Mutually exclusive with --upsert
  --output-layer <OUTPUT-LAYER>                        Output layer name [not available in pipelines]
  --skip-errors                                        Skip errors when writing features [not available in pipelines]
  --no-create-empty-layers                             Avoid creating layers to which no features will be written [not available in pipelines]
Advanced Options:
  --if, --input-format <INPUT-FORMAT>                  Input formats [may be repeated] [not available in pipelines]
  --oo, --open-option <KEY>=<VALUE>                    Open options [may be repeated] [not available in pipelines]
  --output-oo, --output-open-option <KEY>=<VALUE>      Output open options [may be repeated] [not available in pipelines]
  --upsert                                             Upsert features (implies 'append') [not available in pipelines]
                                                       Mutually exclusive with --append

از gdal vector convert می‌توان برای تبدیل داده‌ها بین قالب‌های مختلف استفاده کرد.

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

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

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

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

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

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

نام یک یا چند لایه را برای پردازش مشخص می‌کند. به‌طور پیش‌فرض، تمام لایه‌ها پردازش خواهند شد.
بسیاری از قالب‌ها یک یا چند گزینه اختیاری ساخت لایه دارند که می‌توان از آن‌ها برای کنترل جزئیات لایه ایجادشده استفاده کرد. برای نمونه، درایور GeoPackage از گزینه‌های ساخت لایه برای کنترل شناسه عارضه یا نام ستون هندسه (geometry)، تنظیم شناسه یا توضیحات و غیره پشتیبانی می‌کند.

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

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

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

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

از ایجاد لایه‌هایی که هیچ عارضه‌ای در آن‌ها نوشته نخواهد شد جلوگیری می‌کند.

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

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

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

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

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

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

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

مشخص می‌کند که آیا مجموعه‌داده خروجی موجود در حالت به‌روزرسانی (update) باز شود یا خیر.
افزوده‌شده در نسخه 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 به عنوان کلید برای به‌روزرسانی عوارض موجود استفاده می‌کند. اطمینان از سازگاری FID در لایه‌های مبدأ و مقصد بسیار حیاتی است.

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

پنهان کردن نوار پیشرفت و برخی پیام‌های هشدار.

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

$ gdal vector convert poly.shp output.gpkg

$ gdal vector convert --update --output-layer=lines line.shp output.gpkg

$ gdal vector convert --quiet --append --output-layer=poly poly2.shp output.gpkg

Even Rouault <even.rouault@spatialys.com>

1998-2026

August 18, 2026