Que signifient les parenthèses et les chiffres après une commande Unix ou une fonction C?

Réponses:

221

Sections de page de manuel.

  1. Commande UNIX commune pouvant être utilisée par tous les utilisateurs. par exemplels(1)
  2. Appels système Unix et C par exemple mmap(2)
  3. Routines de bibliothèque C pour les programmes C, par exemple system(3)
  4. Fichiers spéciaux, par exemple sudoers(4)
  5. Formats de fichiers système, par exemple lmhosts(5)
  6. Jeux par exemple fortune(6)
  7. Divers par exemple regex(7)
  8. Commandes d'administration système exécutées par root uniquement, par exemple iwconfig(8)
  9. (? Spécifique à Linux) par exempleksoftirqd(9)

La raison derrière les sections est qu’il ya des choses qui partagent des pages de manuel - mkdir(1)la commande est-elle utilisée pour créer un répertoire alors qu’il mkdir(2)s’agit d’un appel système qui peut être utilisé pour créer un répertoire dans un programme C. Ainsi les différentes sections.

Références annotées [1,2] (comme suggéré):
http://www.gsp.com/support/man/ - Les pages de manuel FreeBSD sont organisées selon les sections
http://manpages.unixforum.co.uk/man-pages/ linux / suse-linux-10.1 / - Les pages de manuel SUSE sont organisées selon les sections
http://www.december.com/unix/ref/mansec.html - Encore un autre tableau pour les sections de page de manuel. Base initiale de la liste (voir les éditions plus anciennes de cet article pour plus de détails)

[1] les explications et les exemples sont en fait des fabrications spontanées dans la tête.
[2] Ce n’est pas académiquement valable, mais la demande de référence est l’une des choses qui a ralenti la croissance de wikipedia. les sceptiques tentent d'obtenir d' autres font référence à tout et certains des contributeurs juste obtenir façon trop agacé de plus rien répondre, non pas que ceux qui tentent d'ajouter des choses inutiles / infondées sont correctement retirés de la piscine (ils ont juste obtenir la balise référence demande tagged sur leurs ajouts, contenu non enlevé ...)

bubu
la source
5
Games (6) a sa propre section!
Jaywalker
5
en fait, cela ressemble plus à un programme amusant qu’à des jeux. caesar (6) et fortune (6) sont tout au plus drôles ... et si vous pensez que bcd (6) est un jeu ... d'accord, je placerais le badge du gourou unix sur vous
bubu le
25
Pour afficher les informations, utilisez la commande suivante: man <number> <command>exemple: man 1 mkdiretman 2 mkdir
Donny Kurnia
@DonnyKurnia le fait le plus important à connaître - vous pouvez désormais déterminer vous-même le reste
n611x007 Le
OTOH, les sceptiques ont rendu votre réponse plus précieuse que la pile "concurrente" stackoverflow.com/a/62972/4145951 , alors je la vote favorablement. ;)
Nemo
83

Un extrait de 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]
ssapkota
la source
3
"Unix est facile: tapez man manet le reste vient tout seul"
gerrit le
1
Ceci n'est pas applicable sur macOS .
Franklin Yu
36

Le numéro fait référence à la section de la page de manuel dans laquelle se trouve la commande ou la fonction C.

Vous pouvez donc accéder à la page de manuel de mount(8)en faisant la commande:

man 8 mount

Ou de ftok(2)pareil:

man 2 ftok
Wuffers
la source
2
Par curiosité, pourquoi pas man mount(8)ou man ftok(2)?
JAB
7
@JAB: Parce que la plupart des coquillages prendront les parenthèses spécialement. Vous ne pouvez utiliser de parenthèses dans aucune commande shell (sans vouloir faire quelque chose de spécial).
Wuffers
Eh bien c'est intéressant.
JAB
+1 C'est la chose la plus essentielle que vous devez savoir - vous pouvez réellement trouver le reste vous-même (même sans vous en rendre compte man man).
n611x007
3

Ce sont des numéros de section. Si vous voulez lire la section 2 de mount, lancez:

man 2 mount

Certaines pages de manuel comportent plusieurs sections.

Jftuga
la source
3

Ce sont les mannuméros de section.

Sections et exemples pour les pages de manuel linux:

  • 1 - Programmes ou commandes shell - cp, rm, dd et ps.
  • 2 - Appels système - fork, exec, ioctl et poll.
  • 3 - Appels à la bibliothèque - printf, malloc, pthread_ *, cos, sin, tan, etc.
  • 4 - périphériques, par exemple null (/ dev / null), port, random, lp.
  • 5 - Formats de fichier - utilisateurs, groupes, hôtes, host.equiv.
  • 6 - jeux.
  • 7 - Divers (souvent des aperçus) - glob, intro, tcp, uri, url, locale.
  • 8 - Commandes et démons Sys Admin - arp, mount, route, useradd, userdel, etc.

Notez qu'il existe des différences entre la liste de sections man pour Linux et celle pour les variantes de Unix System V (par exemple, Solaris, BSD, SCO, Venix). Plus de détails sur le wiki de la page de manuel .

Il est intéressant de noter que Ken Thompson et Denis Ritchie, les célèbres créateurs d’Unix et de C ont écrit les premières pages de manuel - sur l’insistance de leur responsable. Cela vous semble familier?

Pour sélectionner un numéro de section spécifique pour une entrée man sur linux (les printfentrées se trouvent dans les sections 1 et 3).

man 3 printf

Pour afficher toutes les entrées man pourcfdisk (utiliser qau moins ENDune page pour aller à la page suivante:

man -a cfdisk

Pour lister toutes les entrées d'une certaine commande, utilisezapropos

apropos cfdisk
suspect
la source
2

C'est le numéro de section du manuel. Il y a bien longtemps, cela faisait référence au classeur physique qui contenait cette page de manuel particulière.

Depuis la manpage de manuel sur un système Linux moderne:

   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  conventions), e.g.
       man(7), groff(7)
   8   System administration commands (usually only for root)
   9   Kernel routines [Non standard]
Flup
la source
0

Les sections de page de manuel, y compris les non standard sur Arch Linux:

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

(merci à @ greg0ire pour l'idée d'utiliser konqueror)

Babken Vardanyan
la source