ابزار کاربر

ابزار سایت


terminal:m:man-cammand-display-a-program_s-manual-page

این یک نگارش قدیمی از این مطلب است!


دستور man (دریافت راهنمای دستورات)

اگر فکر میکنید که برای کار کردن با لینوکس باید تمامی دستورات لینوکس را با تمامی جزئیات یاد داشته باشید مطمئنا یادگیری لینوکس میتواند خیلی سخت باشد. اما لینوکس دارای یک دستور مفید برای یادآوری تمامی اجزاء دستورات دیگر و همچنین یادگیری آن دستورات هم هست. این دستور man نام دارد و که از سرنام manual به معنای راهنما گرفته شده است.
استفاده از دستور man بسیار ساده است. کافی است man را به همراه نام دستور مورد نظر خود در خط فرمان بزنید تا صفحه همان دستور برای شما باز شود. اما این صفحه فقط حاوی متن با ساختار خاص خودش است که اگر تازه میخواهید با این راهنماها کار کنید شاید اندکی برای شما سخت باشد.
اما دستور man برای سبک بندی و همچنین نمایش صفحه راهنمای یک دستور از دستورات لینوکس کاربردی دارد. با هر توزیع از لینوکس این دستور وجود دارد و زمانی که سرویس یا بسته نرم افزاری را روی سرور خود نصب میکنید فایل های راهنمای آن که با دستور man قابل فراخوانی شدن هستند روی سرور شما نصب میشود.
بیشتر برنامه های اجرایی که به منظور استفاده در خط فرمان ایجاد شده اند یکسری مستندات با نام صفحه راهنما دارند که man page یا همان manual page یعنی صفحه راهنما نامیده میشود. این دستور به اینصورت بکار میرود.

man <program>

که در این دستور program نام دستوری است که میخواهیم صفحه راهنمای آن را مطالعه کنیم. این صفحات تا اندازه ای در شکل متفاوت هستند ولی بصورت کلی شامل: یک عنوان - یک خلاصه از syntax دستور - توضیحی درباره هدف دستور و لیست ها و توضیحات گزینه های دستور است.
صفحات راهنما معمولا شامل مثال نیستند چرا؟
چونکه آنها آموزش نیستند بلکه به عنوان یک مرجع برای حرفه ای ها در نظر گرفته شده اند. به عنوان مثال دستور زیر را امتحان کنید:

man ls

این دستور نه تنها برای خواندن اطلاعات راهنمای دستورات لینوکس کاربرد دارد بلکه خواندن راهنمای فایل های پیکربندی - فراخوانی سیستم1) - کتابخانه های زبان برنامه نویسی و هسته سیستم عامل هم بکار میرود.
این راهنما برای خیلی ها شاید عجیب و مرموز به نظر برسد. اگر شما هم نکاه اول چنین دیدگاهی را دشاته باشید طبیعی است
ساختاز توضیحات راهنمای یک دستور از سبک خاصی پیروی میکند که سعی میکنم در این آموزش کمی از ساختار دستور man را توضیح دهم.
ولی همین که اندکی با خروجی دستور man آشنا شدید خواهید دید گه چقدر راحت تر میتوانید از لینوکس استفاده کنید. چرا که دیگر حتی لازم نیست تک تک اجزاء دستورات را به خاطر بسپارید.
فقط کافی است از نتیجه دستور man به درستی استفاده کرده و هر زمان که موردی را فراموش کردید سریعا به سراغ دستور man بروید. ساختار این دستور به شکل زیر است:

man [option(s)] keyword(s)

دستور man عمدتا بدون هیچگونه مشخصه ای استفاده میشود. فقط کافی است man را به همراه یک فضای خالی و در ادامه نام دستوری که میخواهید راهنمای آن نمایش داده شود وارد کنید. منظور از keyword در بالا همان نام دستور مورد مطالبه ماست.
خود دستور man هم دارای توضیحاتی است که اگر خواسته باشید به این راهنما یا توضیحات دسترسی پیدا کنید باید دستور زیر را بزنید.

man man

برای هر دستور دیگری که میخواهید راهنمایش نمایش داده شود باید همین ساختار را بکار ببرید. مثلا با دستور man ls میتوانید راهنما و توضیحات دستور ls که مربوط به فهرست کردن محتویات یک مسیر است را ببینید. این راهنما بسیار دقیق است بطوریکه اگر تمام جزئیات خروجی این راهنما را درک کنید به راحتی میتوانید یک خط فرمان کار حرفه ای گردید.
دستور man بصورت خودکار نتیجه را به pager عمدتا دستور less ارسال میکند. pager نام یک نوع برنامه است که خروجی متنی یک پرونده را طوری نشان میدهد که شما میتوانید با دستوری به صفحات قبلی و بعدی بروید.
در اینجا pager ما برنامه less است کهب رای نمایش محتویات یک پرونده هم از آن استفاده میشود. پس با این توضیحات تا زمانیکه نتیجه دستور man برای شما در پنجره terminal باز است شما نمیتوانید دستور دیگری از لین.کس را بزنید مگر اینکه با q از راهنمای دستور خارج شوید.
علامت دو نقطه (:) که در انتهای صفحه وجود دارد. به این معنا است که این سند دارای ادامه است و شما برای رفتن به صفحه بعدی باید دکمه Space را از صفحه کلید بزنید. برای رفتن به صفحه قبلی هم باید از b استفاده کنید. البته دکمه های جهت نمای بالا و پایین هم اینکار را بصورت سطر به سطر انجام خواهند داد.
حالا میرویم سراغ خود محتوای صفحه man که یک نمونه از نتیجه این دستور در زیر میبینید.

LS(1)                                                      User Commands                                                     LS(1)
 
NAME
       ls - list directory contents
 
SYNOPSIS
       ls [OPTION]... [FILE]...
 
DESCRIPTION
       List  information about the FILEs (the current directory by default).  Sort entries alphabetically if none of -cftuvSUX nor
       --sort is specified.
 
       Mandatory arguments to long options are mandatory for short options too.
 
       -a, --all
              do not ignore entries starting with .
 
       -A, --almost-all
              do not list implied . and ..
 
       --author
              with -l, print the author of each file
 
       -b, --escape
              print C-style escapes for nongraphic characters
 
       --block-size=SIZE
              with -l, scale sizes by SIZE when printing them; e.g., '--block-size=M'; see SIZE format below
 
       -B, --ignore-backups
              do not list implied entries ending with ~

شامل بخش های مختلفی است که هر بخش با یک عنوان بزرگ مشخص شده است. این بخش ها معمولا شامل موارد زیر هستند که تقریبا برای هر دستور وجود دارند.

  • NAME
  • SYNOPSIS
  • DESCRIPTION
  • OPTIONS
  • AUTHOR
  • BUGS
  • COPYRIGHT
  • HISTORY
  • SEE ALSO

هر کدام از این بخش ها هم ممکن است به زیربخش هایی تقسیم شوند مخصوصا بخش OPTIONS که همان بخشی است که حاوی مشخصه های دستور مورد نظر است و ما بیشتر با این بخش کار خواهیم داشت. هر مشخصه با نامش در این بخش به همراه توضیحاتش البته به انگلیسی نشان داده میشود.

دسته بندی کلی راهنمای لینوکس

به طور کلی تمامی فایلهای راهنمای لینوکس به ۸ دسته کلی نقسیم میشوند که این نوع دسته بندی پاسخگوی اعدادی است که در جای جای خط فرمان لینوکس داخل دوکمان (پرانتز) نوشته شده است. شاید شما آنها را دیدید. در بالاترین قسمت هر صفحه MAN هم (قبل از قسمت NAME) یک عدد داخل دوکمان نوشته شده است.
این همان دسته بندی کلی آن دستور در سیستم لینوکس است. هر عدد نمایانگر یک نوع از این دسته بندی است:

  • User Commands : بیشتر دستورات در این دسته قرار میگیرند
  • System Calls : همان فراخوانی های سیستمی هستند
  • C Library Functions : تابع های مربوط به کتابخانه زبان برنامه نویسی C است.
  • Devices and Special Files : پرونده های مربوط به سخت افزارها و فایل های خاص
  • File Formats and Conventions : قواعد و سبک پرونده
  • Game et. A1 : بازی ها
  • Miscellanea : موارد متفرقه
  • System Administration tools and Daemons : ابزارهای مدیریتی سیستم
1)
system calls
terminal/m/man-cammand-display-a-program_s-manual-page.1549622443.txt.gz · آخرین ویرایش: 2019/02/08 10:40 توسط phoenix

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki