ম্যান পেজে সংখ্যার অর্থ কী?


474

সুতরাং, উদাহরণস্বরূপ, আমি টাইপ করার সময় man lsআমি দেখতে পাই LS(1)। তবে আমি টাইপ করলে man apachectlআমি দেখতে পাই APACHECTL(8)এবং আমি যদি টাইপ man cdকরি তবে শেষ হয় cd(n)

আমি ভাবছি যে প্রথম বন্ধনীর সংখ্যাগুলির তাত্পর্য কী, যদি তাদের কোনও থাকে।




4
@ পিটারমোরটেনসেন এই কারণেই সুপার ইউজার এবং ইউনিক্স / লিনাক্স এবং সার্ভারফল্ট এবং এসকউবুন্টু এবং অ্যাপল সকলকে একত্রিত করা দরকার।
ক্লো

পার্শ্ব নোটে, আপনি নিজের অনুসন্ধান export MANSECT=0p:1:2:3:3p:4:5:6:7:8:9:l:s:n
ক্রমটি

এটি একটি বিশাল ইউএক্স ব্যর্থতা। ডিজিটাল ডকুমেন্টেশনে মোটে বিভাগের নম্বর থাকা উচিত নয়; এর বর্ণনামূলক নাম এবং হাইপারলিঙ্ক থাকা উচিত। আমি বিশ্বাস করতে পারি না যে তারা এতগুলি বিভ্রান্তির সাথে ডকুমেন্টেশন তৈরি করতে সক্ষম হয়েছেন যে এই প্রশ্নটি 121000 বার দেখা হয়েছে।
আয়নো

উত্তর:


496

নম্বরটি পৃষ্ঠাটির ম্যানুয়ালটির কোন বিভাগের সাথে মিলছে; 1 টি হ'ল ইউজার কমান্ডস এবং 8 টি সিসাদমিন স্টাফ। নিজে মানুষের জন্য ম্যান পৃষ্ঠা ( man man) এটি ব্যাখ্যা করে এবং মানকগুলি তালিকাভুক্ত করে:

MANUAL SECTIONS
    The standard sections of the manual include:

    1      User Commands
    2      System Calls
    3      C Library Functions
    4      Devices and Special Files
    5      File Formats and Conventions
    6      Games et. al.
    7      Miscellanea
    8      System Administration tools and Daemons

    Distributions customize the manual section to their specifics,
    which often include additional sections.

কিছু শর্তাবলী রয়েছে যেগুলির বিভিন্ন বিভাগে বিভিন্ন পৃষ্ঠা রয়েছে (উদাহরণস্বরূপ, printfকমান্ডটি বিভাগ 1 এ প্রদর্শিত হবে, যেমন stdlibবিভাগে 3 এ প্রদর্শিত হবে); এর মতো ক্ষেত্রে আপনি manপৃষ্ঠার নামের আগে বিভাগ নম্বরটি পাস করতে পারেন আপনি কোনটি চান তা চয়ন করতে বা man -aপ্রতিটি ম্যাচের পৃষ্ঠাটি পরের বার দেখানোর জন্য ব্যবহার করতে পারেন :

$ man 1 printf
$ man 3 printf
$ man -a printf

কোন পদটি কোন অংশে পড়েছে তা আপনি বলতে পারেন man -k( aproposকমান্ডের সমতুল্য )। এটি স্ট্রিং ম্যাচগুলিও খুব বেশি করবে (উদাঃ এটি sprintfযদি আপনি চালান তবে তা প্রদর্শিত হবে man -k printf), সুতরাং ^termএটি সীমাবদ্ধ করার জন্য আপনার প্রয়োজন :

$ man -k '^printf'
printf               (1)  - format and print data
printf               (1p)  - write formatted output
printf               (3)  - formatted output conversion
printf               (3p)  - print formatted output
printf [builtins]    (1)  - bash built-in commands, see bash(1)

5
এটি অবশ্যই এটি ব্যাখ্যা করে। কোনও প্রদত্ত কমান্ডের জন্য একাধিক ম্যান পৃষ্ঠা রয়েছে কিনা তা বলার সহজ উপায় আছে কি?
ওয়াইল্ডক

2
@ উইল হ্যাঁ, সম্পাদিত
মাইকেল মরোজেক

11
নোট করুন যে এই বিভাগের নম্বরগুলি লিনাক্সের জন্য। আফিকের সমস্ত ইউনিক্স রূপগুলিতে 1, 3 এবং 6 সমান, তবে অন্যান্য এবং অ-একাকী-অধ্যায় বিভাগগুলি পৃথক হতে পারে। সাধারণত man X introবিভাগে কী রয়েছে তা বর্ণনা করে X
গিলস

2
@ কীথবি: আমি বিভিন্ন 4,5,7,8 এর সাথে কিছু সংযোগ ব্যবহার করেছি। ডিজিটাল ইউনিক্স (ওএসএফ 1) ছিল এবং সোলারিস এখনও রয়েছে: ফাইল ফর্ম্যাটগুলি 4 এ, 5 টি বিবিধ, 7-এ ডিভাইস। সোলারিস প্রশাসক কমান্ডও 1 মি। আমি মনে করি 2-তে সিস্টেম কল সর্বজনীন, তবে কিছু সিস্টেমে 2-তে কিছু সি লাইব্রেরি ইন্টারফেসও থাকে (যখন তাদের এপিমনামস সিস্কলের চারপাশে পাতলা র‌্যাপার হওয়ার কথা।
গিলস

4
হু, কে ভেবেছিল যে ম্যানুয়াল ব্যবহারের জন্য আপনার একটি ম্যানুয়াল দরকার ... আমি man manএখনও কখনও মৃত্যুদন্ড কার্যকর করি নি ...
ম্যাট ক্লার্ক

59

এই বিভাগের সংখ্যাগুলির ইতিহাসটি ১৯ in১ সালে থম্পসন এবং রিচি দ্বারা নির্মিত ইউনিক্স প্রোগ্রামার ম্যানুয়ালটিতে ফিরে যায় ।

মূল বিভাগগুলি ছিল

  1. কমান্ড
  2. সিস্টেম কল
  3. সাবরুটিনের
  4. বিশেষ ফাইল
  5. ফাইল ফর্ম্যাট
  6. ব্যবহারকারী দ্বারা পরিচালিত প্রোগ্রাম
  7. বিবিধ

সত্যই, 70 এর দশকের আরও জিনিস। আমি ভেবেছিলাম এটি ৮০ এর দশকের।
রলফ

"বিবিধ" এর অর্থ প্রধানত "একটি নির্দিষ্ট এপিআই শেষের অবস্থানের পরিবর্তে একটি সম্পূর্ণ সাবসিস্টেম বা জেনেরিক ইউনিক্স বৈশিষ্ট্য সম্পর্কে বিস্তৃত তথ্য" " উদাহরণস্বরূপ দেখুন pipe(7), tcp(7)(এবং অন্যান্য নেটওয়ার্কিং মানুষ পৃষ্ঠাগুলি), pthreads(7), boot(7), regex(7), ইত্যাদি আছে যেমন ধারা 7 এ অন্যান্য জিনিস পাশাপাশি, ascii(7)(ASCII টেবিল) এবং man(7)(কিভাবে man পৃষ্ঠা লিখতে) কিন্তু বিস্তৃত ডক্স পৃষ্ঠাগুলি দ্বারা পর্যন্ত হয় আমার অভিজ্ঞতা সেকশন 7 সর্বাধিক দরকারী জিনিস।
কেভিন

31

কনকয়েরার অ-মানক বিভাগগুলিও বর্ণনা করে: (ধারণার জন্য @ গ্রেগ0ireকে ধন্যবাদ)

0     Header files
0p    Header files (POSIX)
1     Executable programs or shell commands
1p    Executable programs or shell commands (POSIX)
2     System calls (functions provided by the kernel)
3     Library calls (functions within program libraries)
3n    Network Functions
3p    Perl Modules
4     Special files (usually found in /dev)
5     File formats and conventions eg /etc/passwd
6     Games
7     Miscellaneous  (including  macro  packages and conventions), e.g. man(7), groff(7)
8     System administration commands (usually only for root)
9     Kernel routines
l     Local documentation
n     New manpages

21

কি এটা ইতিমধ্যে বর্ণিত অর্থ, কিন্তু আমি প্রতিটি অধ্যায় প্রবর্তনের সঙ্গে বিশেষ ম্যানুয়েল পৃষ্ঠা আছে যা যুক্ত করতে চায়: intro। উদাহরণস্বরূপ, দেখুন man 1 introবা আরও man 3 introঅনেক কিছু।


1
আমি আমার ফেডোরা ইনস্টলটিতে এটি দেখতে পাচ্ছি না। ম্যান এক্স ইন্ট্রো কি স্ট্যান্ডার্ড নয়?
বেটগ্যামিট

@tjameson আপনি কি man-pagesপ্যাকেজ ইনস্টল করেছেন?
পিএইচপি-কোডার

15

manম্যানপেজ থেকে :

The table below shows the section numbers of the manual followed by the 
types of pages they contain.

   1   Executable programs or shell commands
   2   System calls (functions provided by the kernel)
   3   Library calls (functions within program libraries)
   4   Special files (usually found in /dev)
   5   File formats and conventions eg /etc/passwd
   6   Games
   7   Miscellaneous  (including  macro  packages and conven‐
       tions), e.g. man(7), groff(7)
   8   System administration commands (usually only for root)
   9   Kernel routines [Non standard]

তারা কেন এরকম আলাদা হয় - কিছু ওভারল্যাপ রয়েছে। আপনি কী বোঝাতে চেয়েছেন তার উপর নির্ভর করে একাধিক বিভাগে কিছু নির্দিষ্ট ম্যানপেজ বিদ্যমান।

উদাহরণস্বরূপ, তুলনা man crontabসঙ্গে man 5 crontab- সম্ভাবনা পরেরটির আপনি সন্ধান করার বোঝানো হয়।


এবং কি man1pএবং man3p?
টাইলো

এবং আমার নিজের ম্যানপেজগুলি কোথায় অবস্থিত ~/man?
টাইলো

আমি জানতাম যে এখানে বিভিন্ন সংখ্যা রয়েছে তবে আমি জানতাম না যে এটির একটি ছড়া আছে। ধন্যবাদ
ব্যবহারকারী 606723

1
1 পি ম্যানুয়ালটির পিক্সিক স্ট্যান্ডার্ড সংস্করণ। আপনি যদি পোর্টেবল কোড লিখতে চান তবে আপনার কেবল এক্সপি ম্যান পেজ ব্যবহার করা উচিত। আপনি যদি বাস্তবায়নটি এক্সপিক্সের সাথে সামঞ্জস্য না করেন তবে এক্স এবং এক্সপি ম্যান পেজগুলি পৃথক হতে পারে।
andcoz

@ টিইলো আমার উত্তর দেখুন
বাবকেন ভারদানী

8

এগুলি বিভাগের নম্বর। কেবল টাইপ করুন man manবা ওপেন কনকুনার এবং টাইপ করুন ম্যান: // ম্যান এবং আপনি দেখতে পাবেন যে এই বিভাগগুলি কী।


7

প্রায়শই কোনও পুরুষ পৃষ্ঠাটি প্রথম বন্ধনীতে আবদ্ধ বিভাগের সাথে এটি প্রত্যয় করার মাধ্যমে উল্লেখ করা হয়, যেমন:

read(2)

এই শৈলীর দুটি প্রধান সুবিধা রয়েছে:

  • এটি অবিলম্বে পরিষ্কার হয়ে গেছে যে আপনি কোনও ম্যান পেজ উল্লেখ করেছেন - অর্থাত্ আপনি সিএফ এর মতো কিছু লিখতে পারেন সিএফের পরিবর্তে (3) পড়ুন বিভাগে 3 ম্যান পৃষ্ঠা পড়ুন '
  • যদি একাধিক বিভাগে একই নামের ম্যান পেজ থাকে তবে বিভাগটি আরও সুনির্দিষ্ট করে উল্লেখ করা হচ্ছে

ম্যান পেজগুলি বিভাগগুলিতে সংগঠিত হয়, যেমন বিভাগ 1 এ সমস্ত ব্যবহারকারী কমান্ড ম্যান পৃষ্ঠা, সিস্টেম কলগুলির জন্য বিভাগ 2 সমস্ত ম্যান পেজ, বিভাগ 3 লাইব্রেরি ফাংশনগুলির জন্য ইত্যাদি অন্তর্ভুক্ত রয়েছে includes

কমান্ড লাইনে, আপনি যদি বিভাগটি স্পষ্টভাবে নির্দিষ্ট না করেন তবে আপনি ডিফল্ট বিভাগের ট্র্যাভারসাল ক্রমে উদাহরণস্বরূপ প্রথম মেলানো ম্যান পৃষ্ঠা পাবেন get

$ man read

ফেডোরায় প্রদর্শিত BASH_BUILTINS(1)হয়। কোথায়

$ man 2 read

read()সিস্টেম কলের জন্য ম্যান পৃষ্ঠা প্রদর্শন করে ।

নোট করুন যে বিভাগটির অবস্থানগত স্পেসিফিকেশন পোর্টেবল নয় - যেমন সোলারিসে আপনি এটি নির্দিষ্ট করে দিন:

$ man -s 2 read

সাধারণত, man manউপলব্ধ কয়েকটি বিভাগের তালিকাও দেয়। তবে অগত্যা সব কিছু নয়। সমস্ত উপলব্ধ বিভাগে তালিকার জন্য এক ডিফল্ট মানুষ পাথ অথবা এনভায়রনমেন্ট ভেরিয়েবল তালিকাভুক্ত সব ডিরেক্টরি সাবডিরেক্টরি তালিকা পারে $MANPATH। উদাহরণস্বরূপ, ফেডোরা 23 সিস্টেমে কিছু বিকাশ প্যাকেজ ইনস্টল করা /usr/share/manরয়েছে যার সাথে নিম্নলিখিত সাব-ডিরেক্টরি রয়েছে:

cs  es  id  man0p  man2   man3x  man5x  man7x  man9x  pt_BR  sk  zh_CN
da  fr  it  man1   man2x  man4   man6   man8   mann   pt_PT  sv  zh_TW
de  hr  ja  man1p  man3   man4x  man6x  man8x  pl     ro     tr
en  hu  ko  man1x  man3p  man5   man7   man9   pt     ru     zh

manউপসর্গ সহ ডিরেক্টরিগুলি প্রতিটি বিভাগকে উপস্থাপন করে - অন্য অংশগুলিতে অনুবাদকৃত বিভাগ রয়েছে। সুতরাং, খালি খালি বিভাগগুলির একটি তালিকা পেতে যে কোনও এইভাবে একটি আদেশ জারি করতে পারে:

$ find /usr/share/man -type f  | sed 's@^.*/man\(..*\)/.*$@\1@' \
    | sort -u | column
0p  1p  3   4   6   8
1   2   3p  5   7

(শেষ হওয়া বিভাগগুলি pহ'ল POSIX ম্যান পৃষ্ঠা)

ম্যান পেজকে অন্য ভাষায় দেখতে (যদি উপলভ্য থাকে) একটি ভাষা সম্পর্কিত পরিবেশ পরিবর্তনশীল সেট করতে পারে, যেমন:

$ LC_MESSAGES=de_DE man read

এছাড়াও, প্রতিটি বিভাগে একটি ভূমিকা ম্যান পৃষ্ঠা থাকা উচিত intro, উদাহরণস্বরূপ:

$ man 2 intro

4

এসভিআর 4 এর সংজ্ঞাগুলি হ'ল:

1 User Commands
2 System Calls
3 library Functions
4 File Formats
5 Standards, Environment and Macros (e.g. man(5))
6 Games and Demos
7 Device and Network Interfaces, Special Files
8 Maintenance Procedures
9 Kernel and Driver entry points and structures

এগুলি হ'ল "জেনেটিক" ইউএনআইএক্স-এর আসল নম্বর। পসিক্স সংখ্যার সংজ্ঞা দেয় না।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.