Hombre, ¿qué significa (1)?

Hombre, ¿qué significa (1)?

Estoy mirando la -fbandera del hombre que se describe como:

   -f, --whatis
          Equivalent to whatis.  Display a short description from the manual page, if available.  See whatis(1) for details.

Cuando uso -fentradas, siempre tengo un corchete al final y, a veces, aparecen varias entradas.

Ejemplos de man -fresultados:

man -f grep:

grep (1)             - print lines matching a pattern

man -f man:

man (7)              - macros to format man pages
man (1)              - an interface to the on-line reference manuals

man -f git:

Git (3pm)            - Perl interface to the Git version control system
git (1)              - the stupid content tracker

Supongo que todas las descripciones de programas normales se muestran con (1).

¿Alguien puede explicar qué otras listas se buscan y cómo identificar qué significan los diferentes números entre paréntesis?

Nota: También noté que para git puedo obtener la página del manual (3:00 p.m.) haciendo en man Gitlugar de man git. Parece contrario a la intuición que man gitincluiría el manual gitpero no Gitdónde, ya que man -f gitdevuelve información sobre ambos.

Respuesta1

Lo que está en los pares (que en algunos sistemas puede ser una combinación de letras y números, pero la mayoría de las veces es solo un dígito) se refiere a unsección en el manual. "El manual" es el volumen combinado de manuales disponibles.

En mi sistema OpenBSD, estas secciones se citan en el man(1)manual (también conocido como "el manual del mancomando", que puede leer con man man):

1         General commands (tools and utilities).
2         System calls and error numbers.
3         Library functions.
3p        perl(1) programmer's reference guide.
4         Device drivers.
5         File formats.
6         Games.
7         Miscellaneous information.
8         System maintenance and operation commands.
9         Kernel internals.

Los números de sección son prácticamente los mismos en todos los sistemas, pero puede haber pequeñas desviaciones. Las secciones no están estandarizadas, al menos no por POSIX, por lo que creo que son en su mayoría tradicionales.

En ocasiones, tendrás que saber qué sección estás buscando. Éste es el caso printf, por ejemplo, del manual. printf(1)se refiere a la printfutilidad del shell, mientras que printf(3)describe la rutina de la biblioteca printf()C. Si escribe man printf, probablemente obtendrá printf(1). Para obtener el manual de la función de la biblioteca C, utilice man 3 printf.

Las secciones parecen haber sido introducidas con la Tercera Edición de UNIX que salió de Bell Labs en 1971 (el primer UNIX escrito en C y no en lenguaje ensamblador).

El manual de la Tercera Edición UNIX conteníalas siguientes secciones:

I.    Commands
II.   System calls
III.  Subroutines
IV.   Special files
V.    File formats
VI.   User-maintained programs
VII.  Miscellaneous
VIII. Maintenance

Respuesta2

extracto de man man(5 párrafo):

   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]

Respuesta3

Los números se refieren a qué sección del manual proviene la información (originalmente, qué volumen físico del conjunto de manuales tenía en el estante).

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

Posteriormente se agregaron algunas "secciones" adicionales. Por ejemplo, (3pm)en el texto citado anteriormente se refiere a un módulo (o biblioteca) de Perl.

Respuesta4

El número después del comando le indica en qué sección de las páginas man se encuentra la documentación para ese comando... por ejemplo, grep(1) significa que la página man para grep se puede encontrar en la sección 1 de las páginas man.

Diferentes versiones de UNIX y diferentes distribuciones de Linux tienen diferentes convenciones en cuanto a qué documentación de comandos va en qué sección.

información relacionada