WHATIS(1) Manual pager utils WHATIS(1)

whatis - نمایش توضیحات یک‌خطی صفحات راهنما

whatis [-dlv?V] [-r|-w] [-s list] [-m system[,...]] [-M path] [-L locale] [-C file] name ...

هر صفحه راهنما شامل توضیح مختصری در درون خود است. دستور whatis نام‌های صفحات راهنما را جستجو کرده و توضیحات صفحه راهنما را برای هر name منطبق نمایش می‌دهد.

name می‌تواند شامل نویسه‌های عام (-w) یا یک عبارت باقاعده (-r) باشد. با استفاده از این گزینه‌ها، ممکن است لازم باشد name را درون گیومه قرار دهید یا نویسه‌های ویژه را با درج بک‌اسلش (\) اسکیپ کنید تا پوسته از تفسیر آن‌ها جلوگیری کند.

پایگاه‌های داده index در حین جستجو استفاده می‌شوند و توسط برنامه mandb به‌روزرسانی می‌گردند. بسته به نحوه نصب سیستم شما، این کار ممکن است از طریق یک وظیفه دوره‌ای کرون (cron job) اجرا شود، یا لازم باشد پس از نصب صفحات راهنمای جدید به‌صورت دستی اجرا گردد. برای تولید یک پایگاه داده متنی سنتی whatis از پایگاه داده متناظر index، دستور زیر را اجرا کنید:

whatis -M manpath -w '*' | sort > manpath/whatis

که در آن manpath یک سلسله‌مراتب صفحه راهنما مانند /usr/man است.

چاپ اطلاعات اشکال‌زدایی.
چاپ پیام‌های هشدار با جزئیات بیشتر.
تفسیر هر name به عنوان یک عبارت باقاعده. اگر یک name با هر بخشی از نام یک صفحه مطابقت داشته باشد، تطابق برقرار خواهد شد. این گزینه به دلیل ماهیت جستجوهای پایگاه داده، موجب می‌شود whatis تا حدی کندتر عمل کند.
تفسیر هر name به عنوان الگویی حاوی نویسه‌های عام به سبک پوسته. برای برقراری تطابق، یک name بسط‌یافته باید با کل نام صفحه مطابقت داشته باشد. این گزینه به دلیل ماهیت جستجوهای پایگاه داده، موجب می‌شود whatis تا حدی کندتر عمل کند.
عدم برش خروجی به اندازه عرض ترمینال. به‌طور معمول، خروجی به اندازه عرض ترمینال کوتاه می‌شود تا از نتایج نامناسب ناشی از بخش‌های NAME بد نگارش‌شده جلوگیری شود.
جستجو تنها در بخش‌های مشخص‌شده از صفحات راهنما. آرگومان list فهرستی از بخش‌ها است که با دونقطه یا کاما از هم جدا شده‌اند. اگر یک ورودی در list یک بخش ساده باشد (برای مثال "3")، فهرست نمایش‌داده‌شده از توضیحات شامل صفحاتی در بخش‌های "3"، "3perl"، "3x" و غیره خواهد بود؛ در حالی که اگر یک ورودی در list دارای پسوند باشد (برای مثال "3perl")، فهرست تنها شامل صفحاتی در همان بخش دقیق از صفحه راهنما خواهد بود.
اگر این سیستم به نام‌های صفحات راهنمای سایر سیستم‌عامل‌ها دسترسی داشته باشد، می‌توان با استفاده از این گزینه به آن‌ها دسترسی پیدا کرد. برای جستجوی نام‌های صفحات راهنمای NewOS، از گزینه -m NewOS استفاده کنید.
مقدار مشخص‌شده برای system می‌تواند ترکیبی از نام‌های سیستم‌عامل‌ها باشد که با کاما از یکدیگر جدا شده‌اند. برای گنجاندن جستجو در نام‌های صفحات راهنمای سیستم‌عامل بومی، نام سیستم man را در رشته آرگومان درج کنید. این گزینه مقدار متغیر محیطی $SYSTEM را بازنویسی و لغو می‌کند.
مشخص کردن مجموعه‌ای جایگزین از سلسله‌مراتب صفحات راهنما برای جستجو، که با دونقطه از هم جدا شده‌اند. به‌طور پیش‌فرض، whatis از متغیر محیطی $MANPATH استفاده می‌کند، مگر اینکه خالی باشد یا تنظیم نشده باشد؛ در این حالت، یک manpath مناسب را بر اساس متغیر محیطی $PATH شما تعیین خواهد کرد. این گزینه محتوای متغیر $MANPATH را بازنویسی و لغو می‌کند.
دستور whatis به‌طور معمول لوکال فعلی شما را با فراخوانی تابع C به نام setlocale(3) تعیین می‌کند که متغیرهای محیطی گوناگون، از جمله احتمالاً $LC_MESSAGES و $LANG را بررسی می‌نماید. برای لغو موقت مقدار تعیین‌شده، از این گزینه برای ارائه مستقیم رشته locale به whatis استفاده کنید. توجه داشته باشید که این تغییر تا زمانی که جستجو برای صفحات عملاً آغاز نشود اعمال نخواهد شد. خروجی‌هایی مانند پیام راهنما همواره بر اساس لوکال تعیین‌شده اولیه نمایش خواهند یافت.
استفاده از این فایل پیکربندی کاربر به‌جای فایل پیش‌فرض در ~/.manpath.
-?, --help
چاپ پیام راهنما و خروج.
چاپ پیام کوتاه نحوه استفاده و خروج.
نمایش اطلاعات نسخه برنامه.

0
اجرای موفقیت‌آمیز برنامه.
1
خطای نحوه استفاده، نحو یا فایل پیکربندی.
2
خطای عملیاتی.
16
هیچ موردی منطبق با معیارهای مشخص‌شده یافت نشد.

اگر متغیر $SYSTEM تنظیم شده باشد، همان اثری را خواهد داشت که گویی به عنوان آرگومان به گزینه -m داده شده است.
اگر متغیر $MANPATH تنظیم شده باشد، مقدار آن به عنوان مسیر جستجوی سلسله‌مراتب صفحات راهنما (جداشده با دونقطه) تفسیر می‌شود.
برای آگاهی از رفتار پیش‌فرض و جزئیات نحوه مدیریت این متغیر محیطی، به بخش SEARCH PATH در صفحه راهنمای manpath(5) مراجعه کنید.
اگر متغیر $MANWIDTH تنظیم شده باشد، مقدار آن به عنوان عرض ترمینال استفاده می‌شود (گزینه --long را ببینید). اگر تنظیم نشده باشد، عرض ترمینال با استفاده از مقدار $COLUMNS و در صورت دسترسی با ioctl(2) محاسبه می‌شود، و در غیر این صورت مقدار پیش‌فرض ۸۰ نویسه استفاده خواهد شد.

/usr/share/man/index.(bt|db|dir|pag)
حافظه نهان سنتی و سراسری پایگاه داده index.
/var/cache/man/index.(bt|db|dir|pag)
حافظه نهان پایگاه داده سراسری index سازگار با استاندارد FHS.
/usr/share/man/.../whatis
پایگاه داده متنی سنتی whatis.

apropos(1), man(1), mandb(8)

Wilf. (G.Wilford@ee.surrey.ac.uk).
Fabrizio Polacco (fpolacco@debian.org).
Colin Watson (cjwatson@debian.org).

https://gitlab.com/man-db/man-db/-/issues
https://savannah.nongnu.org/bugs/?group=man-db

2025-05-02 2.13.1