CARGO-PKGID(1) General Commands Manual CARGO-PKGID(1) نام (NAME) cargo-pkgid - چاپ مشخصه کامل یک بسته خلاصه دستور (SYNOPSIS) cargo pkgid [options] [spec] توضیحات (DESCRIPTION) با دریافت یک آرگومان spec، مشخصه‌ساز شناسه بسته (Package ID) کامل را برای یک بسته یا وابستگی در فضای کاری فعلی چاپ می‌کند. این دستور در صورتی که spec دارای ابهام باشد و مشخص نباشد به کدام بسته در گراف وابستگی‌ها اشاره می‌کند، خطایی ایجاد خواهد کرد. اگر هیچ spec مشخص نشود، مشخصه‌ساز بسته محلی چاپ خواهد شد. این دستور نیازمند در دسترس بودن فایل قفل (lockfile) و واکشی شدن وابستگی‌ها است. مشخصه‌ساز بسته شامل نام، نسخه و URL منبع است. شما مجاز هستید تا زمانی که تنها با یک بسته مطابقت داشته باشد، از مشخصه‌سازهای جزئی برای تطبیق مختصر یک بسته خاص استفاده کنید. این مشخصه‌ساز توسط بخش‌های دیگر Cargo مانند cargo-metadata(1) و پیام‌های JSON صادرشده توسط Cargo نیز استفاده می‌شود. قالب یک spec می‌تواند یکی از موارد زیر باشد: ┌─────────────────┬───────────────────────────────────────────────────────┐ │ساختار SPEC │ نمونه SPEC │ ├─────────────────┼───────────────────────────────────────────────────────┤ │name │ bitflags │ ├─────────────────┼───────────────────────────────────────────────────────┤ │name@version │ bitflags@1.0.4 │ ├─────────────────┼───────────────────────────────────────────────────────┤ │url │ https://github.com/rust-lang/cargo │ ├─────────────────┼───────────────────────────────────────────────────────┤ │url#version │ https://github.com/rust-lang/cargo#0.33.0 │ ├─────────────────┼───────────────────────────────────────────────────────┤ │url#name │ https://github.com/rust-lang/crates.io-index#bitflags │ ├─────────────────┼───────────────────────────────────────────────────────┤ │url#name@version │ https://github.com/rust-lang/cargo#crates-io@0.21.0 │ └─────────────────┴───────────────────────────────────────────────────────┘ دستور زبان مشخصه‌سازی در فصل Package ID Specifications موجود است. گزینه‌ها (OPTIONS) انتخاب بسته (Package Selection) -p spec, --package spec دریافت شناسه بسته برای بسته داده‌شده به جای بسته فعلی. گزینه‌های نمایش (Display Options) -v, --verbose استفاده از خروجی پرجزئیات. برای خروجی «بسیار پرجزئیات» که شامل خروجی‌های اضافی مانند هشدارهای وابستگی و خروجی اسکریپت ساخت است، می‌تواند دو بار مشخص شود. همچنین می‌تواند با مقدار پیکربندی term.verbose مشخص شود. -q, --quiet پیام‌های لاگ کارگو را چاپ نمی‌کند. همچنین می‌تواند با مقدار پیکربندی term.quiet مشخص شود. --color when کنترل زمان استفاده از خروجی رنگی. مقادیر معتبر: • auto (پیش‌فرض): تشخیص خودکار اینکه آیا پشتیبانی از رنگ در ترمینال موجود است یا خیر. • always: نمایش همیشگی رنگ‌ها. • never: عدم نمایش رنگ‌ها در هیچ حالتی. همچنین می‌تواند با مقدار پیکربندی term.color مشخص شود. گزینه‌های مانیفست (Manifest Options) --manifest-path path مسیر فایل Cargo.toml. به طور پیش‌فرض، Cargo به دنبال فایل Cargo.toml در دایرکتوری فعلی یا هر یک از دایرکتوری‌های والد می‌گردد. --locked اطمینان حاصل می‌کند که دقیقاً از همان وابستگی‌ها و نسخه‌هایی استفاده شود که هنگام ایجاد اولیه فایل موجود Cargo.lock استفاده شده‌اند. در صورت بروز هر یک از حالات زیر، Cargo با خطا خارج خواهد شد: • فایل قفل وجود نداشته باشد. • کارگو به دلیل برطرف‌سازی متفاوت وابستگی‌ها تلاش کند فایل قفل را تغییر دهد. این گزینه ممکن است در محیط‌هایی که ساخت‌های قطعی و یکنواخت مورد نظر است، مانند خطوط لوله CI، استفاده شود. --offline از دسترسی Cargo به شبکه به هر دلیلی جلوگیری می‌کند. بدون این پرچم، اگر Cargo نیاز به دسترسی به شبکه داشته باشد و شبکه در دسترس نباشد، با خطا متوقف می‌شود. با این پرچم، Cargo تلاش خواهد کرد در صورت امکان بدون شبکه به کار خود ادامه دهد. توجه داشته باشید که این کار ممکن است منجر به برطرف‌سازی متفاوت وابستگی‌ها نسبت به حالت برخط شود. Cargo خود را به crateهایی که به صورت محلی بارگیری شده‌اند محدود می‌کند، حتی اگر طبق نسخه محلی فهرست، نسخه جدیدتری موجود باشد. برای بارگیری وابستگی‌ها قبل از آفلاین شدن، دستور cargo-fetch(1) را ببینید. همچنین می‌تواند با مقدار پیکربندی net.offline مشخص شود. --frozen معادل مشخص کردن هم‌زمان --locked و --offline است. گزینه‌های عمومی (Common Options) +toolchain اگر Cargo با rustup نصب شده باشد و اولین آرگومان cargo با + شروع شود، به عنوان نام زنجیره ابزار rustup تفسیر خواهد شد (مانند +stable یا +nightly). برای اطلاعات بیشتر درباره چگونگی عملکرد بازنویسی زنجیره ابزار، مستندات rustup را ببینید. --config KEY=VALUE or PATH یک مقدار پیکربندی Cargo را بازنویسی می‌کند. آرگومان باید در ساختار نحوی TOML به صورت KEY=VALUE باشد، یا به عنوان مسیر یک فایل پیکربندی اضافی ارائه شود. این پرچم می‌تواند چندین بار مشخص شود. برای اطلاعات بیشتر، بخش بازنویسی‌های خط فرمان را ببینید. -C PATH دایرکتوری کاری فعلی را قبل از اجرای هر عملیات مشخص‌شده تغییر می‌دهد. این امر مواردی مانند جایی که Cargo به طور پیش‌فرض به دنبال مانیفست پروژه (Cargo.toml) می‌گردد، و همچنین دایرکتوری‌های جستجو شده برای یافتن .cargo/config.toml را تحت تأثیر قرار می‌دهد. این گزینه باید قبل از نام دستور ظاهر شود، برای مثال cargo -C path/to/my-project build. این گزینه فقط در کانال nightly در دسترس است و برای فعال‌سازی به پرچم -Z unstable-options نیاز دارد (ببینید: #10098 ). -h, --help اطلاعات راهنما را چاپ می‌کند. -Z flag پرچم‌های ناپایدار (فقط nightly) برای Cargo. برای جزئیات cargo -Z help را اجرا کنید. محیط (ENVIRONMENT) برای جزئیات درباره متغیرهای محیطی که Cargo می‌خواند، مرجع را ببینید. وضعیت خروج (EXIT STATUS) • 0: کارگو با موفقیت پایان یافت. • 101: کارگو در تکمیل عملیات ناموفق بود. مثال‌ها (EXAMPLES) 1. دریافت مشخصه بسته برای بسته foo: cargo pkgid foo 2. دریافت مشخصه بسته برای نسخه 1.0.0 از foo: cargo pkgid foo@1.0.0 3. دریافت مشخصه بسته برای foo از crates.io: cargo pkgid https://github.com/rust-lang/crates.io-index#foo 4. دریافت مشخصه بسته برای foo از یک بسته محلی: cargo pkgid file:///path/to/local/package#foo همچنین ببینید (SEE ALSO) cargo(1), cargo-generate-lockfile(1), cargo-metadata(1), Package ID Specifications , JSON messages CARGO-PKGID(1)