web-dev-qa-db-fra.com

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

Je continue à voir des parenthèses et un nombre après une commande sous Unix ou Linux ou une fonction C.

Par exemple: man (8), ftok (2), mount (8), etc.

Qu'est-ce que cela signifie? Je les vois aussi chez l'homme.

218
Malfist

Sections de page de manuel.

  1. Commande UNIX commune pouvant être utilisée par tous les utilisateurs. par exemple. ls(1)
  2. Appels système Unix et C, par exemple mmap(2)
  3. Routines de bibliothèque C pour les programmes C, par ex. 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. Les commandes d'administration système exécutées par root uniquement, par exemple. iwconfig(8)
  9. (? Spécifique à Linux) par exemple ._ksoftirqd(9)

La raison derrière les sections est qu’il existe des pages de manuel de partage. mkdir(1) est la commande utilisée pour créer un répertoire alors que mkdir(2) est 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 organisées en sections
http://manpages.unixforum.co.uk/man-pages/linux/suse-linux-10.1/ - Pages de manuel SUSE disposés 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] pas que cela soit valable du point de vue académique, mais la demande de référence est l’une des choses qui a ralenti la croissance de wikipedia. les sceptiques essaient de faire en sorte que les autres référencent tout et que certains contributeurs obtiennent simplement trop agacé pour répondre à quoi que ce soit, pas que ceux qui essaient d'ajouter des éléments inutiles/sans fondement soient correctement retirés le pool (la balise reference-request est simplement taguée sur leurs ajouts, le contenu n'est pas supprimé ...)

218
bubu

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]
83
ssapkota

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 exécutant la commande suivante:

man 8 mount

Ou de ftok(2) comme ceci:

man 2 ftok
36
Wuffers

Ce sont des numéros de section des pages de manuel Unix traditionnelles. Votre question a déjà reçu une réponse sur Unix et Linux Stack Exchange il y a un an Que signifient les numéros d'une page de manuel?.

12
JdeBP

Ce sont les numéros de section man.

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 - appareils, par exemple null (/ dev/null), port, aléatoire, 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.

Remarque 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 (printf a des entrées dans les sections 1 et 3).

man 3 printf

Pour afficher toutes les entrées man de cfdisk (utilisez q à END d'une page pour passer à la page suivante:

man -a cfdisk

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

apropos cfdisk
3
suspectus

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.

3
jftuga

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

Depuis la page de manuel man 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]
2
Flup

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)

0
Babken Vardanyan