.\" -*- mode: troff; coding: utf-8 -*- .\" Automatically generated by Pod::Man v6.0.2 (Pod::Simple 3.45) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" \*(C` and \*(C' are quotes in nroff, nothing in troff, for use with C<>. .ie n \{\ . ds C` "" . ds C' "" 'br\} .el\{\ . ds C` . ds C' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is >0, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .\" .\" Avoid warning from groff about undefined register 'F'. .de IX .. .nr rF 0 .if \n(.g .if rF .nr rF 1 .if (\n(rF:(\n(.g==0)) \{\ . if \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . if !\nF==2 \{\ . nr % 0 . nr F 2 . \} . \} .\} .rr rF .\" .\" Required to disable full justification in groff 1.23.0. .if n .ds AD l .\" ======================================================================== .\" .IX Title "PACSIFT 1" .TH PACSIFT 1 2025-12-04 pacutils pacsift .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "نام (NAME)" pacsift \- پرس‌وجو و پالایش بسته‌ها .SH "خلاصه دستور (SYNOPSIS)" .IX Header "SYNOPSIS" .Vb 2 \& pacsift [options] ( )... \& pacsift (\-\-help|\-\-version) .Ve .SH "توضیحات (DESCRIPTION)" .IX Header "DESCRIPTION" به طور پیش‌فرض، اشتراک بسته‌های مطابقت‌یافته بازگردانده می‌شود. اگر یک فیلد چندین بار مشخص شود، اجتماع موارد منطبق برای آن فیلد استفاده خواهد شد. .PP اگر \fIstdin\fR به یک ترمینال متصل نباشد، بسته‌ها جهت پالایش از \fIstdin\fR خوانده می‌شوند. .PP ترکیب با \fBpacinfo\fR برای نمایش اطلاعات کوتاه بسته مشابه با \&\f(CW\*(C`pacman \-Qs\*(C'\fR و \f(CW\*(C`pacman \-Ss\*(C'\fR: .PP .Vb 1 \& pacsift \-\-name pacman | pacinfo \-\-short .Ve .SH "گزینه‌ها (OPTIONS)" .IX Header "OPTIONS" .IP \fB\-\-config\fR=\fIpath\fR 4 .IX Item "--config=path" تنظیم مسیر پرونده پیکربندی جایگزین. .IP \fB\-\-dbext\fR=\fIextension\fR 4 .IX Item "--dbext=extension" تنظیم پسوند جایگزین برای پایگاه‌داده همگام‌سازی. .IP \fB\-\-dbpath\fR=\fIpath\fR 4 .IX Item "--dbpath=path" تنظیم مسیر پایگاه‌داده جایگزین. .IP \fB\-\-root\fR=\fIpath\fR 4 .IX Item "--root=path" تنظیم ریشه نصب جایگزین. .IP \fB\-\-sysroot\fR=\fIpath\fR 4 .IX Item "--sysroot=path" تنظیم ریشه سیستم جایگزین. به \fBpacutils\-sysroot\fR\|(7) مراجعه کنید. .IP \fB\-\-null\fR[=\fIsep\fR] 4 .IX Item "--null[=sep]" تنظیم جداکننده جایگزین برای مقادیر خوانده‌شده از \fIstdin\fR. به طور پیش‌فرض از خط جدید \f(CW\*(C`\en\*(C'\fR به عنوان جداکننده استفاده می‌شود. اگر \fB\-\-null\fR بدون تعیین \fIsep\fR به کار رود، از \f(CW\*(C`NUL\*(C'\fR استفاده خواهد شد. .IP \fB\-\-exists\fR 4 .IX Item "--exists" خروج با وضعیت غیرصفر در صورت یافت نشدن هیچ موردی. .IP \fB\-\-not\-exists\fR 4 .IX Item "--not-exists" خروج با وضعیت غیرصفر در صورت یافت شدن موارد منطبق. .IP \fB\-\-invert\fR 4 .IX Item "--invert" بازگرداندن بسته‌هایی که با عبارت‌های جستجوی ارائه‌شده مطابقت \fBندارند\fR. .IP \fB\-\-any\fR 4 .IX Item "--any" بازگرداندن اجتماع بسته‌های منطبق به جای اشتراک آن‌ها. .IP \fB\-\-exact\fR 4 .IX Item "--exact" تطبیق دقیق مقادیر. .IP \fB\-\-regex\fR 4 .IX Item "--regex" رفتار با مقادیر رشته‌ای به عنوان عبارت‌های منظم گسترده غیرحساس به حروف کوچک و بزرگ. .IP \fB\-\-help\fR 4 .IX Item "--help" نمایش اطلاعات نحوه استفاده و خروج. .IP \fB\-\-version\fR 4 .IX Item "--version" نمایش اطلاعات نسخه و خروج. .SS "فیلترها (Filters)" .IX Subsection "Filters" فیلترها مجموعه اولیه بسته‌های مورد جستجو را محدود می‌کنند. در صورتی که بسته‌ها از طریق \fIstdin\fR فراهم شوند، این فیلترها قابل استفاده نیستند و تحت تأثیر \fB\-\-invert\fR یا \fB\-\-any\fR قرار نمی‌گیرند. .IP \fB\-\-local\fR 4 .IX Item "--local" جستجو در بسته‌های نصب‌شده محلی. مشابه با: pacsift \-\-repo=local | pacsift ... .IP \fB\-\-sync\fR 4 .IX Item "--sync" جستجو در بسته‌های پایگاه‌های داده همگام‌سازی. مشابه با: pacsift \-\-invert \-\-repo=local | pacsift ... .IP "\fB\-\-cache\fR (\fBآزمایشی - EXPERIMENTAL\fR)" 4 .IX Item "--cache (EXPERIMENTAL)" جستجو در بسته‌های دایرکتوری‌های حافظه موقت (کش). .SS "فیلدهای رشته‌ای (String Fields)" .IX Subsection "String Fields" به طور پیش‌فرض، فیلدهای رشته‌ای از جستجوی زیررشته غیرحساس به حروف کوچک و بزرگ استفاده می‌کنند. اگر \&\fB\-\-exact\fR استفاده شود، فیلدهای رشته‌ای باید دقیقاً با \fIval\fR مطابقت داشته باشند. در صورت استفاده از \f(CW\*(C`\-\-regex\*(C'\fR، مقدار \fIval\fR به عنوان یک عبارت منظم گسترده بدون حساسیت به حروف کوچک و بزرگ استفاده خواهد شد. .IP \fB\-\-repo\fR=\fIval\fR 4 .IX Item "--repo=val" .PD 0 .IP \fB\-\-name\fR=\fIval\fR 4 .IX Item "--name=val" .IP \fB\-\-base\fR=\fIval\fR 4 .IX Item "--base=val" .IP \fB\-\-description\fR=\fIval\fR 4 .IX Item "--description=val" .IP \fB\-\-packager\fR=\fIval\fR 4 .IX Item "--packager=val" .IP \fB\-\-group\fR=\fIval\fR 4 .IX Item "--group=val" .IP \fB\-\-owns\-file\fR=\fIpath\fR 4 .IX Item "--owns-file=path" .PD مسیرهای پرونده باید با پایگاه‌داده بسته مطابقت داشته باشند؛ هیچ تلاشی برای حل مسیر ارائه‌شده انجام نمی‌شود. \fBنکته:\fR هنگام استفاده با \fB\-\-exact\fR، ریشه نصب در صورت وجود از \fIpath\fR حذف خواهد شد؛ در غیر این صورت، \fIpath\fR دقیقاً همان‌طور که ارائه شده استفاده می‌شود. می‌توان با \fBrealpath\fR یا \fBwhich\fR جهت جستجوی آسان‌تر مالک پرونده‌های نصب‌شده استفاده کرد: .Sp .Vb 1 \& pacsift \-\-local \-\-exact \-\-owns\-file="$(which pacsift)" .Ve .IP \fB\-\-license\fR=\fIval\fR 4 .IX Item "--license=val" .PD 0 .IP \fB\-\-url\fR=\fIval\fR 4 .IX Item "--url=val" .PD .SS "فیلدهای وابستگی (Dependency Fields)" .IX Subsection "Dependency Fields" وابستگی‌ها را می‌توان در قالب \f(CW\*(C`[\*(C'\fR، \&\f(CW\*(C`>=\*(C'\fR. اگر \f(CW\*(C`version\*(C'\fR ارائه شود، وابستگی بسته باید تطابق دقیقی با عبارت جستجو داشته باشد. اگر \f(CW\*(C`version\*(C'\fR حذف شود، تنها \f(CW\*(C`pkgname\*(C'\fR مقایسه خواهد شد مگر اینکه از \fB\-\-exact\fR استفاده شود. اگر \f(CW\*(C`\-\-exact\*(C'\fR به کار رود و \f(CW\*(C`version\*(C'\fR ارائه نشده باشد، فقط وابستگی‌هایی که هیچ نسخه‌ای برای آن‌ها تعیین نشده تطبیق داده می‌شوند. .PP فیلدهای وابستگی تحت تأثیر \fB\-\-regex\fR قرار نمی‌گیرند. .IP \fB\-\-provides\fR 4 .IX Item "--provides" .PD 0 .IP \fB\-\-conflicts\fR 4 .IX Item "--conflicts" .IP \fB\-\-replaces\fR 4 .IX Item "--replaces" .IP \fB\-\-depends\fR 4 .IX Item "--depends" .IP \fB\-\-optdepends\fR 4 .IX Item "--optdepends" .PD .SS "فیلدهای اندازه (Size Fields)" .IX Subsection "Size Fields" فیلدهای اندازه می‌توانند با هر یک از عملگرهای مقایسه‌ای زیر شروع شوند: \f(CW\*(C`=\*(C'\fR، \f(CW\*(C`!=\*(C'\fR، \&\f(CW\*(C`<\*(C'\fR، \f(CW\*(C`<=\*(C'\fR، \f(CW\*(C`>\*(C'\fR، \f(CW\*(C`>=\*(C'\fR. اگر مقایسه‌ای ارائه نشود، از \f(CW\*(C`=\*(C'\fR استفاده خواهد شد. اندازه می‌تواند با یک واحد اختصاری دنبال شود. واحدها به حروف کوچک و بزرگ حساس هستند. .IP \fB\-\-size\fR 4 .IX Item "--size" .PD 0 .IP \fB\-\-installed\-size\fR 4 .IX Item "--installed-size" .IP \fB\-\-download\-size\fR 4 .IX Item "--download-size" .PD .SS "فیلدهای تاریخ (Date Fields)" .IX Subsection "Date Fields" فیلدهای تاریخ می‌توانند با هر یک از عملگرهای مقایسه‌ای زیر شروع شوند: \f(CW\*(C`=\*(C'\fR، \f(CW\*(C`!=\*(C'\fR، \&\f(CW\*(C`<\*(C'\fR، \f(CW\*(C`<=\*(C'\fR، \f(CW\*(C`>\*(C'\fR، \f(CW\*(C`>=\*(C'\fR. اگر مقایسه‌ای تعیین نشود، از \f(CW\*(C`=\*(C'\fR استفاده خواهد شد. تاریخ‌ها را می‌توان به صورت ثانیه‌های سپری‌شده از مبدأ یونیکس یا در هر یک از قالب‌های \f(CW\*(C`strptime\*(C'\fR زیر ارائه کرد: \f(CW\*(C`%Y\-%m\-%d\*(C'\fR، \f(CW\*(C`%Y\-%m\-%d %H:%M\*(C'\fR، \&\f(CW\*(C`%Y\-%m\-%d %H:%M:%S\*(C'\fR. .IP \fB\-\-install\-date\fR 4 .IX Item "--install-date" .PD 0 .IP \fB\-\-build\-date\fR 4 .IX Item "--build-date" .PD .SS "سایر موارد (Other)" .IX Subsection "Other" .IP \fB\-\-satisfies\fR=\fIdependency\fR 4 .IX Item "--satisfies=dependency" جستجو برای بسته‌هایی که وابستگی \fIdependency\fR را برآورده می‌کنند. .SH "مثال‌ها (EXAMPLES)" .IX Header "EXAMPLES" .IP "یافتن بسته‌های معیوب:" 4 .IX Item "Find broken packages:" .Vb 1 \& pacsift \-\-packager allan .Ve .IP "یافتن بسته‌های نصب‌شده بزرگ:" 4 .IX Item "Find large installed packages:" .Vb 1 \& pacsift \-\-local \-\-size \*(Aq>1.5GB\*(Aq .Ve .ie n .IP "یافتن بسته‌هایی با وجود عبارت ""pacman"" یا ""alpm"" در توضیحات آن‌ها:" 4 .el .IP "یافتن بسته‌هایی با وجود عبارت \f(CWpacman\fR یا \f(CWalpm\fR در توضیحات آن‌ها:" 4 .IX Item "Find packages with either pacman or alpm in their description:" .Vb 1 \& pacsift \-\-description pacman \-\-description alpm .Ve .ie n .IP "یافتن بسته‌هایی با وجود هر دو عبارت ""pacman"" و ""alpm"" در توضیحات آن‌ها:" 4 .el .IP "یافتن بسته‌هایی با وجود هر دو عبارت \f(CWpacman\fR و \f(CWalpm\fR در توضیحات آن‌ها:" 4 .IX Item "Find packages with both pacman and alpm in their description:" .Vb 1 \& pacsift \-\-description pacman | pacsift \-\-description alpm .Ve .IP "بررسی نصب بودن یک بسته:" 4 .IX Item "Check if a package is installed:" .Vb 1 \& pacsift \-\-local \-\-exists \-\-satisfies pacman && echo "pacman is installed" .Ve .SH "هشدارها (CAVEATS)" .IX Header "CAVEATS" دستور \&\fBpacsift\fR خواندن یا نخواندن بسته‌ها از \fIstdin\fR را بر اساس یک بررسی ساده با استفاده از \fBisatty\fR\|(3) تعیین می‌کند. اگر \fBpacsift\fR در محیطی فراخوانی شود (مانند یک تابع پوسته یا اسکریپت استفاده‌شده در خط لوله) که در آن \fIstdin\fR به ترمینال متصل نیست اما حاوی بسته‌هایی برای پالایش هم نیست، \fBpacsift\fR باید با ورودی استاندارد (\fIstdin\fR) بسته فراخوانی شود. در پوسته‌های سازگار با POSIX، این کار با \f(CW\*(C`<&\-\*(C'\fR انجام‌پذیر است.