Estou olhando para a -f
bandeira do homem, que é descrita como:
-f, --whatis
Equivalent to whatis. Display a short description from the manual page, if available. See whatis(1) for details.
Quando eu realmente uso -f
entradas, sempre tenho um colchete no final e às vezes você obtém várias entradas.
Exemplos de man -f
resultados:
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
Suponho que todas as descrições normais de programas são mostradas com (1)
.
Alguém pode explicar quais outras listas estão sendo pesquisadas e como identificar o que significam os diferentes números entre parênteses?
Nota: também notei que para o git posso obter a página de manual (15h) fazendo em man Git
vez de man git
. Parece contra-intuitivo man git
incluir o manual, git
mas não Git
onde, como man -f git
retorna informações sobre ambos.
Responder1
A coisa entre parênteses (que em alguns sistemas pode ser uma combinação de letras e números, mas na maioria das vezes é apenas um único dígito) refere-se a umseção do manual. “O manual” é o volume combinado de manuais disponíveis.
No meu sistema OpenBSD, essas seções são citadas no man(1)
manual (também conhecido como "o manual do man
comando", que você pode ler 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.
Os números das seções são basicamente os mesmos em todos os sistemas, mas podem haver pequenos desvios. As seções não são padronizadas, pelo menos não pelo POSIX, então acho que são em sua maioria tradicionais.
Às vezes, você terá que saber qual seção está procurando. É o caso do printf
manual, por exemplo. printf(1)
refere-se à printf
utilidade do shell, enquanto printf(3)
descreve a rotina da biblioteca printf()
C. Se você digitar man printf
, provavelmente obterá printf(1)
. Para obter o manual da função da biblioteca C, use man 3 printf
.
As seções parecem ter sido introduzidas com a Terceira Edição do UNIX lançada pelo Bell Labs em 1971 (o primeiro UNIX escrito em C e não em linguagem assembly).
O manual da Terceira Edição UNIX continhaas seguintes seções:
I. Commands
II. System calls
III. Subroutines
IV. Special files
V. File formats
VI. User-maintained programs
VII. Miscellaneous
VIII. Maintenance
Responder2
extrato de man man
(5 parágrafo):
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]
Responder3
Os números referem-se a qual seção do manual a informação vem (originalmente, qual volume físico do conjunto de manuais que você tinha na prateleira).
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]
Algumas 'seções' adicionais foram adicionadas posteriormente. Por exemplo, o (3pm)
texto citado acima refere-se a um módulo perl (ou biblioteca).
Responder4
O número após o comando indica em qual seção das páginas de manual está a documentação desse comando... por exemplo, grep(1) significa que a página de manual do grep pode ser encontrada na seção 1 das páginas de manual.
Diferentes sabores de UNIX e diferentes distribuições de Linux têm convenções diferentes quanto à documentação de quais comandos vão em cada seção.