| PKGFILE(1) | pkgfile Manual | PKGFILE(1) |
نام (NAME)
pkgfile - کاوشگر فرادادههای .files در alpm
خلاصه دستور (SYNOPSIS)
کاربرد: pkgfile [عملیات] [گزینهها] هدف
توضیحات (DESCRIPTION)
دستور pkgfile فرادادههای .files ایجادشده توسط repo-add(8) را برای بازیابی اطلاعات فایلهای مربوط به بستهها جستجو میکند. بهطور پیشفرض، هدف ارائهشده یک نام فایل در نظر گرفته میشود و pkgfile بسته(هایی) را که شامل این فایل هستند برمیگرداند. مخازنی که pkgfile در آنها جستجو میکند، توسط مخازن فعالشده در /etc/pacman.conf تعیین میشوند.
عملیاتها (OPERATIONS)
- -l, --list
- هدف بهجای نام فایل، یک نام بسته در نظر گرفته میشود و محتویات بسته مشخصشده بازگردانده میشود. این کار امکان استفاده از ساختار repo/package (مانند "core/pacman") را برای محدود کردن دامنه جستجو فراهم میکند، اما فقط زمانی که --list بدون گزینههای --glob یا --regex استفاده شود.
- -s, --search
- جستجو برای بستههایی که شامل هدف ارائهشده هستند. این حالت پیشفرض عملیات است.
- -u, --update
- بهروزرسانی فایلهای فراداده ذخیرهشده. توصیه میشود یک کرانجاب (cron job) روزانه با این دستور ایجاد کنید تا از نتایج دقیق اطمینان حاصل شود. بهطور پیشفرض، تنها مخازنی بارگیری میشوند که نسخه جدیدتری از آنها در آینه (mirror) یافت شود. این گزینه را دو بار ارسال کنید تا بارگیری مجدد تمامی مخازن اجبار شود.
تطبیق (MATCHING)
- -b, --binaries
- تنها فایلهایی را برمیگرداند که در یک دایرکتوری bin یا sbin قرار دارند.
- -d, --directories
- علاوه بر این، دایرکتوریها را نیز در نتایج جستجو لحاظ میکند.
- -g, --glob
- فعالسازی تطبیق الگوی glob به سبک شل. glob(7) را ببینید. توجه داشته باشید که نویسههای عام شل (wildcards) مانند * و ? هرگز با جداکنندههای مسیر تطبیق داده نمیشوند. بنابراین، این نوع تطبیق برای جستجوی ورودیها درون دایرکتوریها مفید است، مانند /usr/bin/*.
- -i, --ignorecase
- غیرفعالسازی حساسیت به حروف بزرگ و کوچک در تطبیق.
- -r, --regex
- فعالسازی تطبیق عبارت باقاعده. pcre(3) را ببینید.
- -R REPO, --repo=REPO
- جستجو تنها در مخزن مشخصشده.
خروجی (OUTPUT)
- -0, --null
- جداسازی خروجی با بایتهای تهی (null) بهجای نویسههای خط جدید.
- -q, --quiet
- خروجی کمتر. این گزینه برای عملیات --list اعمال میشود.
- -v, --verbose
- خروجی بیشتر. این گزینه برای عملیات --search اعمال میشود.
- -w, --raw
- جلوگیری از تراز کردن (justification) خروجی دو ستونی.
گزینههای عمومی (GENERAL OPTIONS)
- -C FILE, --config=FILE
- استفاده از یک فایل پیکربندی دیگر بهجای فایل پیشفرض /etc/pacman.conf.
- -D DIRECTORY, --cachedir=DIRECTORY
- استفاده از یک مسیر حافظه موقت (cache) دیگر بهجای پیشفرض زمان کامپایل.
- -h, --help
- نمایش راهنما و خروج.
- -V, --version
- نمایش نسخه و خروج.
روشهای تطبیق (MATCHING HEURISTICS)
در حالت --search و بدون گزینه --regex یا --glob، دستور pkgfile تلاش میکند تا هدف ارائهشده را بهعنوان یک نام فایل دقیق تطبیق دهد. اگر هدف حاوی نویسه '/' باشد، تطبیق با کل مسیر امتحان خواهد شد. با فعال بودن جستجوی --regex و --glob، دستور pkgfile همیشه تطبیق را بر اساس کل نام مسیر انجام میدهد.
در حالت --list و بدون گزینه --regex یا --glob، دستور pkgfile تلاش میکند تا هدف ارائهشده را بهعنوان یک نام بسته دقیق تطبیق دهد. اگر هدف حاوی نویسه '/' باشد، متن پیش از اسلش بهعنوان یک مخزن در نظر گرفته شده و جستجو محدود خواهد شد.
قلابهای دستور یافت نشد (COMMAND NOT FOUND HOOKS)
- /usr/share/doc/pkgfile/command-not-found.bash
- /usr/share/doc/pkgfile/command-not-found.zsh
- /usr/share/doc/pkgfile/command-not-found.fish
- توابع
سازگار با
zsh، bash و fish که
میتوان
آنها را در
راهاندازی
شل گنجاند
تا هنگام
یافت نشدن
یک دستور
اجراشده، pkgfile
را اجرا
کنند.
اگر متغیر محیطی PKGFILE_PROMPT_INSTALL_MISSING تنظیم شده باشد و تنها یک بسته پیدا شود، پیامی برای نصب بسته نمایش داده خواهد شد. نکته: این قابلیت نیازمند برنامه sudo(8) است و در حال حاضر فقط توسط پیادهسازیهای bash و zsh پشتیبانی میشود.
بهروزرسانی خودکار (AUTOMATING UPDATES)
توصیه میشود از pkgfiled(1) برای بهروز نگهداشتن پایگاههای داده .files همگام با اجرای `pacman -Fy` (چه توسط کاربر یا یک تایمر systemd/کرانجاب) استفاده کنید. سرویس pkgfiled میتواند با دستور زیر فعال شود:
systemctl enable --now pkgfiled
همچنین، pkgfile شامل تایمر و واحدهای سرویس systemd برای خودکارسازی بهروزرسانیهای دورهای پایگاههای داده .files است. با فرض اینکه pkgfile با پشتیبانی از systemd کامپایل شده باشد، این قابلیت میتواند با دستور زیر فعال شود:
systemctl enable --now pkgfile-update.timer
همچنین ببینید (SEE ALSO)
نویسنده (AUTHOR)
Dave Reisner <d@falconindy.com>
| 2026-08-05 | pkgfile 26 |