apk-query(8) System Manager's Manual apk-query(8)

apk-query - پرس‌وجو از اطلاعات بسته در پایگاه داده apk

apk query [<options>...] query...

apk query [<options>...] --recursive constraints...

دستور apk query بسته‌های منطبق را در منابع انتخاب‌شده جستجو می‌کند.

در حالت پیش‌فرض، مشخص‌کننده‌های query به این صورت تفسیر می‌شوند:

name{[<>~=]version}
انتخاب بسته‌ها بر اساس name و تطابق اختیاری version.
text
انتخاب بسته‌ها بر اساس تطابق فیلدهای انتخاب‌شده با text.

در حالت --recursive، مقدار constraints فهرستی از وابستگی‌ها را برای برآورده شدن مشخص می‌کند و از الگوریتم حل‌کننده (solver) برای تعیین فهرستی از بسته‌ها که این محدودیت‌ها را برآورده می‌کنند استفاده می‌شود.

پرس‌وجو در مراحل زیر اجرا می‌شود:

1.
هر رشته query به طور مستقل برای انتخاب بسته‌های کاندید اجرا می‌شود
2.
اگر --all-matches مشخص نشده باشد، بهترین کاندید برای عبارت داده‌شده به فهرست بسته‌های نتیجه اضافه می‌شود
3.
فهرست بسته‌های حاصل مرتب‌سازی می‌شود

اپلت‌هایی که از مشخص‌کننده‌های پرس‌وجو پشتیبانی می‌کنند گزینه‌های زیر را می‌شناسند:

--all-matches

انتخاب تمام بسته‌های منطبق. به طور پیش‌فرض فقط بهترین تطابق برای هر عنصر پرس‌وجو انتخاب می‌شود.

--available

فیلتر کردن انتخاب به بسته‌های موجود و در دسترس.

--fields FIELDS[:REVERSE_FIELD]

فهرستی جداشده با کاما از فیلدها برای گنجاندن در خروجی. یک مشخصه اختیاری برای تعیین فیلد خروجی جهت فیلدهای وابستگی معکوس ساختگی (synthetic reverse dependency) را می‌توان تعیین کرد (name، package یا origin).

--format FORMATSPEC

تعیین قالب خروجی از میان default، yaml یا json. قالب default خروجی متنی خوانا برای انسان است.

--from FROMSPEC

جستجوی بسته‌ها از: system (همه منابع سیستمی)، repositories (به جز پایگاه داده نصب‌شده)، installed (به جز مخازن معمولی) یا none (فقط مخازن خط فرمان).

--installed

فیلتر کردن انتخاب به بسته‌های نصب‌شده.

--match FIELDS

فهرستی جداشده با کاما از فیلدها برای تطابق پرس‌وجو با آن‌ها.

--recursive

اجرای الگوریتم حل‌کننده با constraints مشخص‌شده برای انتخاب بسته‌ها.

--summarize FIELD[:REVERSE_FIELD]

تولید خلاصه‌ای از فیلد مشخص‌شده از تمام موارد منطبق. خلاصه برای فیلدهای زیر در دسترس است: package، name، origin، depends، provides، replaces، install_if، recommends، reverse-depends و reverse-install-if.

--upgradable

فیلتر کردن انتخاب به بسته‌های قابل ارتقا.

--world

گنجاندن وابستگی‌های apk-world(5) در محدودیت‌ها. به طور ضمنی فعال‌کننده --recursive است.

--orphaned

فیلتر کردن انتخاب به بسته‌های یتیم (orphaned).

نام فیلدها برای گزینه‌های --match و --fields و همچنین برای خروجی قابل پردازش ماشین (json و yaml) همگی با حروف کوچک هستند. برای قالب پیش‌فرض خوانا برای انسان، فیلدها با حروف بزرگ شروع می‌شوند.

فیلدهای متاداده بسته زیر در دسترس هستند: name، version، description، arch، license، origin، maintainer، url، commit، build-time، installed-size، file-size، provider-priority، depends، provides، replaces، install-if، layer، tags، triggers، scripts و replaces-priority. برای شرح این فیلدها بخش‌های package info metadata و package metadata در apk-package(8) را ببینید.

علاوه بر این، فیلدهای زیر نیز در دسترس هستند:

contents

نام فایل‌های موجود در یک بسته.

download-url

نشانی کامل (URL) برای بارگیری بسته.

owner

جستجوی بسته مالک برای نام مسیر داده‌شده. (فقط برای --match)

package

شناسه بسته در قالب name-version (مانند package-1.0-r0).

repositories

فهرست مخازنی که بسته در آن‌ها در دسترس است.

status

وضعیت یک بسته نصب‌شده. فهرستی از یک یا چند کلیدواژه زیر:
  • installed
  • broken-files
  • broken-scripts
  • broken-xattr

# جستجوی تمام بسته‌هایی که با apk شروع می‌شوند
apk query "apk*"

# نمایش بسته مالک فایل اجرایی sensors در قالب json
apk query --format json --match owner /usr/bin/sensors

# نمایش apk-tools و وابستگی‌های آن در قالب yaml
apk query --format yaml --recursive apk-tools

# چاپ بسته‌های منبع برای تمام بسته‌های ارائه‌دهنده cmd:apk
apk query --match name,provides cmd:apk --fields origin

# چاپ بسته‌های منبع با نام وابستگی مشخص
apk query --match depends so:libapk.so.2.14.9 --fields origin

2026-08-31