Que signifie le nombre entre parenthèses affiché après les noms de commandes Unix dans les pages de manuel?

496

Par exemple: man(1), find(3), updatedb(2)?

Que signifient les chiffres entre parenthèses ("parenthèses" britanniques)?

duckyflip
la source
4
les pages de manuel donneront une introduction, utiliser (intro man 1) (intro man 2)
tsenapathy
5
Cross duplicate dans Super User et Unix et Linux .
Franklin Yu

Réponses:

484

C'est la section à laquelle la page de manuel de la commande est affectée.

Ceux-ci sont divisés en

  1. Commandes générales
  2. Appels système
  3. Fonctions de bibliothèque C
  4. Fichiers spéciaux (généralement des périphériques, ceux trouvés dans / dev) et pilotes
  5. Formats de fichier et conventions
  6. Jeux et économiseurs d'écran
  7. Miscellanea
  8. Commandes et démons d'administration système

Les descriptions originales de chaque section peuvent être consultées dans le manuel du programmeur Unix (page ii).

Ian G
la source
123
Info clé: pour accéder à une page de manuel donnée comme "foo (5)":man 5 foo
Steve Bennett
1
Ce lien avait la même liste, mais était une version v5 dudit manuel. J'ai pris la liberté de mettre à jour le lien de la réponse avec un vers Internet Archive qui avait la version v7 à laquelle la réponse d'origine semblait lier (sur la base de l'URL).
Jeroen
80

La section de la commande est documentée dans le manuel. La liste des sections est documentée dans le manuel de l'homme. Par exemple:

man 1 man
man 3 find

Ceci est utile lorsque des commandes similaires ou exactement égales existent sur différentes sections

Vinko Vrsalovic
la source
102
Et dans "l'ancien temps", les numéros de section correspondaient au classeur dans lequel se trouvait la version papier de la page de manuel.
Darron
51

La raison pour laquelle les numéros de section sont importants est qu'il y a de nombreuses années, lorsque l'espace disque était plus problématique que maintenant, les sections pouvaient être installées individuellement.

De nombreux systèmes n'avaient que 1 et 8 installés par exemple. De nos jours, les gens recherchent plutôt les commandes sur Google.

LepardUK
la source
10

Notez également que sur d'autres Unix, la méthode de spécification de la section diffère. Sur Solaris, par exemple, c'est:

man -s 1 man
ARBRE
la source
8

Il indique la section des pages de manuel dans laquelle se trouve la commande. L'option -s de la commande man peut être utilisée pour limiter une recherche à certaines sections.

Lorsque vous affichez une page de manuel, le coin supérieur gauche donne le nom de la section, par exemple:

Commandes utilisateur printf (1)
Fonctions de bibliothèque C standard printf (3C)

Donc, si vous essayez de rechercher des fonctions C et que vous ne voulez pas voir accidentellement une page pour une commande utilisateur qui partage le même nom, vous feriez 'man -s 3C ...'

Dave Costa
la source
6

Comme le dit @Ian G , ce sont les sections de la page de manuel. Allons encore plus loin:

1. Voir la page de manuel pour la commande man avec man man, et elle montre les 9 sections comme suit:

DESCRIPTION
       man  is  the system's manual pager. Each page argument given
       to man is normally the name of a program, utility  or  func‐
       tion.   The  manual page associated with each of these argu‐
       ments is then found and displayed. A section,  if  provided,
       will  direct man to look only in that section of the manual.
       The default action is to search in all of the available sec‐
       tions following a pre-defined order ("1 n l 8 3 2 3posix 3pm
       3perl 5 4 9 6 7" by default, unless overridden by  the  SEC‐
       TION directive in /etc/manpath.config), and to show only the
       first page found, even if page exists in several sections.

       The table below shows the section numbers of the manual fol‐
       lowed 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]

       A manual page consists of several sections.


2. man <section_num> <cmd>

Imaginons que vous parcouriez Google pour les commandes Linux. Vous trouverez la OPEN(2)pg en ligne: http://man7.org/linux/man-pages/man2/open.2.html .

Pour le voir dans les pages de manuel de votre PC, tapez simplement man 2 open.

Pour FOPEN(3)utilisation man 3 fopen, etc.

3. man <section_num> intro

Pour lire les pages d'introduction à une section, tapez man <section_num> intro, par exemple man 1 intro, man 2 intro, man 7 intro, etc.

Pour afficher successivement toutes les introductions de pages de manuel, procédez l'une après l'autre man -a intro. La page d'introduction de la section 1 s'ouvre. Appuyez sur qpour quitter, puis appuyez sur Enterpour afficher l'intro de la section 8. Appuyez sur qpour quitter, puis appuyez sur Enterpour afficher l'intro de la section 3. Continuez ce processus jusqu'à la fin. Chaque fois après avoir frappé q, cela vous ramènera à l'écran du terminal principal, mais vous serez toujours dans une invite interactive, et vous verrez cette ligne:

--Man-- next: intro(8) [ view (return) | skip (Ctrl-D) | quit (Ctrl-C) ]

Notez que l'ordre des sections qui man -a introvous guidera est:

  1. Section 1
  2. Section 8
  3. Section 3
  4. Section 2
  5. Section 5
  6. Section 4
  7. Section 6
  8. Section 7

Cet ordre de recherche est intentionnel, comme l' man manexplique la page:

The default action is to search in all of the available sections follow‐
ing a pre-defined order ("1 n l 8 3 2 3posix 3pm 3perl 5 4 9 6 7" by default, unless overrid‐
den  by the SECTION directive in /etc/manpath.config)

En relation:

  1. Recherche Google pour "linux, que signifie le nombre entre parenthèses après une fonction?" - https://www.google.com/search?q=linux+what+does+the+number+mean+in+parenthesis+after+a+function%3F&oq=linux+what+does+the+number+mean + entre + parenthèses + après + une + fonction% 3F & aqs = chrome..69i57j69i64.9867j0j7 & sourceid = chrome & ie = UTF-8
  2. /superuser/297702/what-do-the-parentheses-and-number-after-a-unix-command-or-c-function-mean
  3. /unix/3586/what-do-the-numbers-in-a-man-page-mean
Gabriel Staples
la source
2
Informations extrêmement utiles, je ne sais pas pourquoi les votes négatifs mais vous avez mon +1.
harperville
2

Détails de Wikipedia sur les sections manuelles:

  1. Commandes générales
  2. Appels système
  3. Fonctions de bibliothèque, couvrant notamment la bibliothèque standard C
  4. Fichiers spéciaux (généralement des périphériques, ceux trouvés dans / dev) et pilotes
  5. Formats de fichier et conventions
  6. Jeux et économiseurs d'écran
  7. Miscellanea
  8. Commandes et démons d'administration système
Bob Setterbo
la source
4
Cette réponse est devenue inutile; le lien qui n'était pas également dans la réponse acceptée précédemment s'est rompu et a été supprimé, maintenant il n'y a plus rien ajouté par cette réponse.
Ben Voigt