WHEREIS(1) دستورات کاربر WHEREIS(1)

whereis - یافتن فایل‌های دودویی، منبع و راهنمای یک دستور

whereis [گزینه‌ها] [-BMS دایرکتوری... -f] نام...

دستور whereis مکان فایل‌های دودویی، منبع و صفحات راهنما را برای نام‌های دستور مشخص‌شده می‌یابد. از نام‌های ارائه‌شده ابتدا پیشوندهای مسیر حذف می‌شوند. پیشوندهای s. که در نتیجه استفاده از سیستم‌های کنترل کد منبع ایجاد شده‌اند نیز مدیریت می‌شوند. سپس whereis تلاش می‌کند برنامه مورد نظر را در مکان‌های استاندارد لینوکس و در مسیرهای مشخص‌شده توسط متغیرهای محیطی $PATH و $MANPATH پیدا کند.

محدودیت‌های جستجو (گزینه‌های -b، -m و -s) تجمعی هستند و بر روی الگوهای نام بعدی در خط فرمان اعمال می‌شوند. هر محدودیت جستجوی جدید، ماسک جستجو را بازنشانی می‌کند. برای مثال:

whereis -bm ls tr -m gcc

فایل‌های دودویی و صفحات راهنمای "ls" و "tr"، و تنها صفحات راهنمای "gcc" را جستجو می‌کند.

گزینه‌های -B، -M و -S مسیرهای جستجو را برای الگوهای نام بعدی بازنشانی می‌کنند. برای مثال:

whereis -m ls -M /usr/share/man/man1 -f cal

صفحات راهنمای "ls" را در تمام مسیرهای پیش‌فرض جستجو می‌کند، اما برای "cal" تنها در دایرکتوری /usr/share/man/man1 جستجو انجام می‌دهد.

جستجو برای فایل‌های دودویی.
جستجو برای صفحات راهنما.
جستجو برای فایل‌های منبع.
تنها نمایش نام دستوراتی که ورودی‌های غیرمعمول دارند. یک دستور زمانی غیرمعمول نامیده می‌شود که برای هر نوع درخواست‌شده به صورت صریح، دقیقاً یک ورودی نداشته باشد. بنابراین 'whereis -m -u *' فایل‌هایی از دایرکتوری جاری را درخواست می‌کند که فاقد فایل مستندات هستند، یا بیش از یک فایل دارند.
محدود کردن مکان‌هایی که whereis در آن‌ها به دنبال فایل‌های دودویی می‌گردد، با فهرستی از دایرکتوری‌ها که با فاصله از هم جدا شده‌اند.
محدود کردن مکان‌هایی که whereis در آن‌ها به دنبال فایل‌های راهنما و مستندات در قالب Info می‌گردد، با فهرستی از دایرکتوری‌ها که با فاصله از هم جدا شده‌اند.
محدود کردن مکان‌هایی که whereis در آن‌ها به دنبال فایل‌های منبع می‌گردد، با فهرستی از دایرکتوری‌ها که با فاصله از هم جدا شده‌اند.
پایان دادن به فهرست دایرکتوری‌ها و اعلام شروع نام فایل‌ها. استفاده از این گزینه هنگام به‌کارگیری هر یک از گزینه‌های -B، -M یا -S الزامی است.
چاپ فهرست مسیرهای جستجوی مؤثری که whereis استفاده می‌کند. زمانی که هیچ‌یک از گزینه‌های -B، -M یا -S مشخص نشده باشند، این گزینه مسیرهای ثابتی (hard-coded) را که دستور موفق به یافتن آن‌ها در سیستم شده است نمایش می‌دهد.
تفسیر نام‌های بعدی به عنوان الگوهای glob(7). دستور whereis همواره فقط نام فایل‌ها (نام پایه یا basename) را مقایسه می‌کند و هرگز مسیر کامل را نمی‌سنجد. استفاده از نام دایرکتوری در الگو هیچ اثری ندارد. فراموش نکنید که پوسته الگو را هنگام تعیین در خط فرمان بدون نقل‌قول تفسیر می‌کند. استفاده از نقل‌قول برای نام الزامی است؛ برای مثال:
whereis -g 'find*'
نمایش متن راهنما و خروج.
نمایش اطلاعات نسخه و خروج.

به‌طور پیش‌فرض whereis تلاش می‌کند فایل‌ها را از مسیرهای ثابتی پیدا کند که با الگوهای glob تعریف شده‌اند. دستور تلاش می‌کند از محتویات متغیرهای محیطی $PATH و $MANPATH به عنوان مسیر جستجوی پیش‌فرض استفاده کند. ساده‌ترین راه برای آگاهی از مسیرهای در حال استفاده، افزودن گزینه فهرستی -l است. اثرات گزینه‌های -B، -M و -S نیز با -l نمایش داده می‌شوند.

فعال‌سازی خروجی اشکال‌زدایی (دیباگ).

برای یافتن تمام فایل‌های موجود در /usr/bin که مستنداتی در /usr/man/man1 ندارند یا فاقد منبع در /usr/src هستند:

cd /usr/bin
whereis -u -ms -M /usr/man/man1 -S /usr/src -f *

برای گزارش باگ‌ها از سامانه پیگیری اشکالات استفاده کنید:

دستور whereis بخشی از بسته util-linux است که می‌توان آن را از آرشیو کرنل لینوکس دانلود کرد:

find(1), type(1), which(1), glob(7)

2026-06-16 util-linux 2.41.5