What do the parentheses and number after a Unix command or C function mean?

21,833

Solution 1

Manpage sections.

  1. Common UNIX command that can be used by all users. e.g. ls(1)
  2. Unix and C system calls e.g. mmap(2)
  3. C library routines for C programs e.g. system(3)
  4. Special files e.g. sudoers(4)
  5. System file formats e.g. lmhosts(5)
  6. Games e.g. fortune(6)
  7. Miscellaneous e.g. regex(7)
  8. System administration commands that is run by root only e.g. iwconfig(8)
  9. (?Linux specific) e.g.ksoftirqd(9)

The reason behind sections is that there are things sharing manual pages - mkdir(1) is the command used to create a directory whereas mkdir(2) is a system call that can be used to create a directory in a C program. Thus the different sections.

Annotated References [1,2] (as suggested):
http://www.gsp.com/support/man/ - The FreeBSD manpages arranged according to sections
http://manpages.unixforum.co.uk/man-pages/linux/suse-linux-10.1/ - SUSE manpages arranged according to sections
http://www.december.com/unix/ref/mansec.html - Yet another table for manpage sections. Initial basis of the list (See older edits of this post for details)

[1] explanations and examples are spontaneous fabrications in my head, for the matter.
[2] not that it is academically sound, but request for reference is one of the thing that slowed the growth of wikipedia. skeptics are trying to get others reference everything and some of the contributors just get way too annoyed to further answer anything, not that those who try to add useless/baseless stuff are properly removed from the pool (they just get the reference-request tag tagged onto their additions, contents not removed...)

Solution 2

An excerpt from man 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]

Solution 3

The number refers to the man page section the command or C function is in.

So you could access the man page of mount(8) by doing the command:

man 8 mount

Or of ftok(2) like such:

man 2 ftok

Solution 4

They are section numbers of the traditional Unix manual pages. Your question has already been answered on Unix and Linux Stack Exchange a year ago, What do the numbers in a man page mean?.

Solution 5

These are section numbers. If you want to read section 2 of mount then run:

man 2 mount

Some man pages have multiple sections.

Share:
21,833

Related videos on Youtube

Malfist
Author by

Malfist

Updated on September 18, 2022

Comments

  • Malfist
    Malfist over 1 year

    I keep seeing parentheses and a number after a command in Unix or Linux or C function.

    For example: man(8), ftok(2), mount(8), etc.

    What do these mean? I see them in man too.

  • JAB
    JAB almost 13 years
    Out of curiosity, why isn't it man mount(8) or man ftok(2)?
  • Wuffers
    Wuffers almost 13 years
    @JAB: Because most shells will take the parentheses specially. You can't use parentheses in any shell commands (without wanting to do something special).
  • JAB
    JAB almost 13 years
    Well that's interesting.
  • Jaywalker
    Jaywalker almost 13 years
    Games (6) got a section of their own!
  • Hans Kilian
    Hans Kilian almost 13 years
    actually, it is more like funny program than games. caesar(6) and fortune(6) are at most funny.... and if you think bcd(6) is a game... okay, i'd place the unix guru badge on you
  • Donny Kurnia
    Donny Kurnia almost 13 years
    To display the information, use the command: man <number> <command> example: man 1 mkdir and man 2 mkdir
  • n611x007
    n611x007 almost 12 years
    @DonnyKurnia the single most important fact one needs to know - you can figure out the rest yourself from here on, actually
  • n611x007
    n611x007 almost 12 years
    +1 This is the most essential thing you need to know - you can actually figure out the rest yourself (even without realizing man man).
  • gerrit
    gerrit almost 12 years
    "Unix is easy: type man man and the rest comes by itself"
  • Nemo
    Nemo over 9 years
    OTOH, the skeptics made your answer more valuable than the "competing" stackoverflow.com/a/62972/4145951, so I'm upvoting it. ;)
  • Franklin Yu
    Franklin Yu about 7 years
    This is not applicable on macOS.
  • Pacerier
    Pacerier over 6 years
    @bubu, What's the diff between section 7 and section 1?