web-dev-qa-db-ja.com

manページの数字はどういう意味ですか?

たとえば、_man ls_と入力すると、LS(1)と表示されます。しかし、_man apachectl_と入力するとAPACHECTL(8)が表示され、_man cd_と入力するとcd(n)になります。

かっこ内の数字に意味がある場合、その意味は何かと思います。

514
Wilduck

番号は、そのページのマニュアルのセクションに対応しています。 1はユーザーコマンド、8はsysadminに関するものです。 man自体のmanページ(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関数はセクション3に表示されるため、stdlibコマンドはセクション1に表示されます)。このような場合は、ページ名の前にセクション番号をmanに渡して必要なページを選択するか、man -aを使用して一致するすべてのページを続けて表示できます。

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

man -kaproposコマンドと同等)を使用して、用語がどのセクションに該当するかを確認できます。これは部分文字列の一致も行います(たとえば、man -k printfを実行するとsprintfと表示されます)。そのため、^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)
524
Michael Mrozek

これらのセクション番号の履歴は、1971年にThompsonとRitchieによって作成された nix Programmer's Manual に戻ります。

元のセクションは

  1. コマンド
  2. システムコール
  3. サブルーチン
  4. 特別なファイル
  5. ファイルフォーマット
  6. ユーザーが保守するプログラム
  7. 雑多
59
KeithB

konquerorは非標準セクションについても説明します:(アイデアについて@ greg0ireに感謝)

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
34

その意味はすでに説明していますが、各セクションに紹介付きの特別なマニュアルページintroがあることも付け加えておきます。たとえば、man 1 introまたはman 3 introなどを参照してください。

21
php-coder

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 crontabman 5 crontab-後者は、検索するつもりである可能性があります。

16
Shadur

これらはセクション番号です。 man manまたはkonquerorを開いてman:// manと入力すると、これらのセクションが表示されます。

8
greg0ire

多くの場合、マニュアルページは括弧で囲まれたセクションを付けたサフィックスで参照されます。例:

_read(2)
_

このスタイルには2つの主な利点があります。

  • manページを参照することはすぐに明らかです。つまり、 'cf。 'cf.の代わりにread(3)'セクション3のreadのmanページ
  • 複数のセクションに同じ名前のmanページが含まれている場合、セクションの指定はより正確です

マニュアルページはセクションで構成されています。セクション1にはすべてのユーザーコマンドのマニュアルページが含まれ、セクション2にはシステムコールのすべてのマニュアルページが含まれ、セクション3にはライブラリ関数などが含まれます。

コマンドラインでセクションを明示的に指定しない場合、最初に一致するmanページがデフォルトのセクショントラバーサル順序で表示されます。例:

_$ man read
_

fedoraでBASH_BUILTINS(1)を表示します。どこ

_$ man 2 read
_

read()システムコールのマニュアルページを表示します。

セクションの位置指定は移植できないことに注意してください。 Solarisでは、次のように指定します。

_$ man -s 2 read
_

通常、_man man_には、使用可能なセクションの一部もリストされています。しかし、必ずしもすべてではありません。利用可能なすべてのセクションを一覧表示するには、デフォルトのmanパスまたは環境変数_$MANPATH_にリストされているすべてのディレクトリのサブディレクトリを一覧表示できます。たとえば、いくつかの開発パッケージがインストールされたFedora 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 manページです)

別の言語(利用可能な場合)でマニュアルページを表示するには、言語関連の環境変数を設定できます。例:

_$ LC_MESSAGES=de_DE man read
_

また、各セクションには、introという名前の導入マニュアルページが必要です。経由で表示可能:

_$ man 2 intro
_
7
maxschlepzig

SVr4の定義は次のとおりです。

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

これらは、「遺伝的」UNIXの実際の番号付けです。 POSIXは数値を定義しません。

4
schily