آیا میخواهید مسیر یک فایل اجرایی در لینوکس را مشاهده کنید؟
چندین دستور لینوکس مانند which، whereis، type -a و command -v میتوانند به شما کمک کنند تا مسیر فایلهای اجرایی را پیدا کرده و منبع آنها را به شکلی ساده و مؤثر درک کنید.
نمایش مسیر فایلهای اجرایی در لینوکس برای رفع اشکال (troubleshooting) و بررسی اینکه کدام نسخه از یک دستور در حال اجراست، بسیار مفید است. این موضوع زمانی اهمیت بیشتری پیدا میکند که چندین نسخه یا نصب مختلف از یک برنامه روی سیستم وجود داشته باشد. برای مثال، اگر نسخهای از یک برنامه را هم در سطح سیستمی و هم توسط کاربر نصب کرده باشید، دانستن مسیر دقیق میتواند از رفتارهای غیرمنتظره جلوگیری کند. این موضوع بهویژه در محیطهایی که متغیر PATH شخصیسازی شده، کاربردی است.
روش اول: دستور which
دستور which در لینوکس این امکان را میدهد که مسیر دقیق یک فایل اجرایی را پیدا و نمایش دهید. میتوانید یک یا چند فایل را مشخص کنید تا مسیر آنها را پیدا کند.
وقتی از دستور which استفاده میکنید، این دستور پوشههایی را که در متغیر محیطی PATH مشخص شدهاند بررسی میکند و محل اولین فایل اجرایی منطبق را نمایش میدهد. البته، اگر دستور را با گزینه -a اجرا کنید، تمام مسیرهای منطبق با فایل اجرایی موردنظر را نشان میدهد.
دستور which در لینوکس سه نوع کد خروجی دارد:
- کد ۰: زمانی که تمام فایلهای مشخصشده یافت شده و قابل اجرا هستند.
- کد ۱: اگر حداقل یکی از دستورات قابل اجرا نباشد.
- کد ۲: در صورت استفاده از گزینهای ناشناخته.
نحوه استفاده از دستور which در لینوکس به شکل زیر است:
which -a [fileName] ...
در اینجا، fileName نام فایل اجرایی است که میخواهید مسیر آن را بیابید.
مثال: پیدا کردن مسیر فایلهای اجرایی با دستور which
برای مثال، برای یافتن مسیر اجرایی Python3.۱۰ میتوانیم این دستور را اجرا کنیم:
which -a Python3.10
این دستور تمام مسیرهای منطبق با فایل اجرایی مشخصشده را نمایش خواهد داد.
روش دوم: دستور whereis
دستور whereis در لینوکس مسیر فایلهای باینری (اجرایی)، فایلهای کد منبع، و صفحات راهنما (man pages) مربوط به یک دستور خاص را نمایش میدهد.
زمانی که این دستور را اجرا میکنید، پوشههای استاندارد سیستم را جستوجو کرده و مسیر فایل اجرایی و مستندات مرتبط با دستور موردنظر را نمایش میدهد.
ساختار کلی استفاده از دستور whereis در لینوکس به شکل زیر است:
whereis [options] [fileName] ...
دستور whereis میتواند چندین گزینه بپذیرد که برای انجام عملکرد خاصی استفاده میشوند.
برای مثال:
- گزینه
-bبرای جستوجوی فقط فایلهای اجرایی (باینری)، - گزینه
-mبرای جستوجوی فقط صفحات راهنما، - گزینه
-Bبرای تعیین مسیر جستوجوی فایلهای اجرایی، و سایر گزینهها.
مثال: نمایش مسیر یک فایل اجرایی با دستور whereis
مرورگر Firefox یکی از برنامههای اجرایی در سیستمهای لینوکسی است. میتوانید با استفاده از دستور whereis مسیر آن را مشاهده کنید:
whereis firefox
در خروجی زیر، مسیر /usr/bin/firefox نشاندهنده مکان فایل اجرایی این برنامه است:
firefox: /usr/bin/firefox /usr/share/man/man1/firefox.1.gz
روش سوم: دستور type در لینوکس
دستور type در لینوکس به شما امکان میدهد ماهیت یک دستور را مشخص کنید.
برای مثال، این دستور مشخص میکند که آیا دستور موردنظر یک میانبر (alias)، یک دستور داخلی شل (built-in)، یک تابع (function) یا یک برنامه خارجی ذخیرهشده در سیستم است.
همچنین میتوانید از type برای بررسی مسیر فایل اجرایی یک دستور استفاده کنید.
در لینوکس، دستور type یک دستور داخلی شل است (برخلاف برخی دستورات دیگر که فایل اجرایی مستقل دارند). برای اطمینان از این موضوع میتوانید از دستور زیر استفاده کنید:
type type
که در خروجی مشخص خواهد شد که type یک دستور داخلی شل است.
ساختار پایهای دستور type برای نمایش مسیر یک فایل اجرایی به صورت زیر است:
type fileName
در اینجا، fileName نام دستوری است که میخواهید مسیر فایل اجرایی آن را بررسی کنید.
مثال: نمایش مسیر فایل اجرایی با استفاده از دستور type
بیایید از دستور type برای نمایش مسیر اجرای Python، بهطور خاص نسخهی python3.10 استفاده کنیم:
type python3.10
خروجی این دستور چیزی شبیه به این خواهد بود:
python3.10 is /usr/bin/python3.10
این خروجی نشان میدهد که python3.10 یک برنامه اجرایی است که در مسیر /usr/bin/python3.10 قرار دارد.
دستور type فقط اولین مسیر اجرایی مرتبط با دستور مشخصشده را نمایش میدهد. اما اگر میخواهید تمام مسیرهای منطبق را مشاهده کنید، میتوانید از این دستور با گزینهی -a استفاده کنید:
type -a python3.10
با این کار، لیستی از تمام محلهایی که دستور python3.10 در آنها یافت میشود نمایش داده خواهد شد—مانند نسخههای نصبشده در مسیرهای مختلف یا لینکهای نمادین (symlinks) به فایل اجرایی اصلی. این روش برای بررسی دقیقتر مسیرها در سیستم بسیار مفید است.
روش چهارم: استفاده از دستور command -v در لینوکس
دستور command -v یک دستور داخلی شِل در لینوکس است که برای یافتن موقعیت یک دستور یا بررسی اینکه آیا آن دستور در متغیر محیطی PATH سیستم شما موجود است یا نه استفاده میشود.
وقتی این دستور را اجرا میکنید، اطلاعات دقیقی نمایش میدهد که نشان میدهد دستور مورد نظر یک فایل اجرایی، دستور داخلی شِل، یک alias، یا یک تابع (function) است.
برای نمایش مسیر کامل یک فایل اجرایی، از ساختار زیر استفاده کنید:
command -v fileName
مثال: نمایش مسیر فایل اجرایی با استفاده از command -v
در مثال زیر از دستور command -v برای نمایش مسیر اجرای مرورگر فایرفاکس استفاده شده است:
command -v firefox
خروجی این دستور نشان میدهد که Firefox یک فایل اجرایی است که در مسیر زیر قرار دارد:
/usr/bin/firefox
در لینوکس، چندین دستور وجود دارد که به شما کمک میکنند مسیر فایلهای اجرایی را پیدا کنید. هر کدام کاربرد خاص خود را دارند که در این مقاله بررسی شد. میتوانید بر اساس نیازتان، مناسبترین دستور را انتخاب کنید تا بهراحتی مسیر فایلهای اجرایی را بیابید.
با تمرین و تسلط بر این دستورات لینوکسی، میتوانید مسیر فایلها را سریعتر پیدا کرده و روند کار خود را بهبود بخشید.















