Tabela de conteúdos
man
Objetivo do exame EX200 para a certificação RHCSA.
O comando man é uma ferramenta para visualização e busca no man-pages.
O projeto Linux man-pages mantido pela Linux Kernel Organization, documenta o kernel Linux, as interfaces de biblioteca C que são utilizados por programas, a biblioteca GNU C (glibc), etc. O man-pages fornece páginas de manual organizados em seções:
- User commands: inclui um número reduzido de páginas de programas fornecidos pela biblioteca GNU C.
- System calls: documenta as chamadas de sistema (system calls) fornecidas pelo kernel Linux.
- Library functions: documenta as funções fornecidas pela biblioteca C padrão.
- Devices: documenta detalhes de vários dispositivos, a maioria dos quais residem em /dev.
- Games : Jogos.
- Overviews, conventions, and miscellaneous: Visão geral, convenções e etc.
- Superuser and system administration commands: inclui um número reduzido de páginas, basicamente programas fornecidos pela biblioteca GNU C.
O man-pages possui somente páginas referentes aos pacotes disponíveis na instalação atual. Ao instalar um novo pacote, o manual correspondente é adicionado.
Curiosidade: o man-pages é a versão digital do The Unix Programmer's Manual que teve sua primeira versão publicada em 3 de novembro de 1971.
Usos mais comuns
Visualização de um manual
Para ver manual de um comando execute:
$ man <comando>
O comando man abrirá a página especificada localizada em /usr/share/man utilizando o comando less.
Veja um exemplo, visualizando o manual do comando man:
$ man man
Ou caso deseje especificar a sessão:
$ man 1 man
Resultado:
Navegação em um manual
Comandos no teclado para navegação dentro da página aberta (os mesmos do comando less).
Ação | Comando |
---|---|
Exibe um resumo dos comandos less | h |
Descer uma página | Page Down ou barra de espaço ou f |
Subir uma página | Page Up or b |
Descer meia página | d |
Subir meia página | u |
Ir para o início da página | g |
Ir para o final da página | G |
Descer uma linha | seta para baixo ou Enter |
Subir uma linha | seta para baixo |
Pesquisar por um texto (descendo) | / seguido pelo texto desejado |
Pesquisar por um texto (subindo) | ? seguido pelo texto desejado |
Segue para o próximo resultado da busca | n |
Retorna para o resultado anterior da busca | N |
Fecha o man | q |
Busca por manual
Utilizado para descobrir qual comando utilizar para uma determinada necessidade.
man -k regex ou apropos regex.
Realiza uma busca nos títulos e descrição dos manuais disponíveis no man-pages pela regex desejada, utilizando expressões regulares.
Descobrindo qual comando utilizar para criar um diretório:
$ man -k "make dir" mkdir (1) - make directories
ou
$ apropos "make dir" mkdir (1) - make directories
Linux man-pages: man(1)
Comandos relacionados
Em cada página do man-pages existe uma seção chamada SEE ALSO (veja também) que exibe uma lista de comandos que possuem alguma relação com o comando atual.
Caso um comando ou função não adote o man-pages como documentação oficial (normalmente programas GNU), na sessão SEE ALSO irá conter um aviso para utilizar o comando info para acessar a documentação completa. Exemplo do comando info:
$ man info
Resultado:
SEE ALSO The full documentation for info is maintained as a Texinfo manual. If the info program is properly installed at your site, the command info info should give you access to the complete manual. (Or, if you have Emacs, M-x info will lead to the manual.) info 5.1 June 2014 INFO(1)
apropos
Comando de busca no man-pages. Equivale ao comando man -k com a diferença que o comando man realiza a busca nos arquivos localizados em /usr/share/man e o comando apropos no índice localizado em /var/cache/man/.
Exemplo:
$ apropos manuals man (1) - an interface to the on-line reference manuals
Linux man-pages: apropos(1)
whatis
Comando que exibe a descrição de um comando. Realiza a pesquisa utilizando o índice localizado em /var/cache/man/.
Exemplo:
$ whatis apropos apropos (1) - search the manual page names and descriptions
Linux man-pages: whatis(1)
mandb
Comando para criar e atualizar o índice do man-pages. Atualizando diariamente pelo cron pelo arquivo /etc/cron.daily/man-db.cron.
Para atualizar o índice, caso tenha instalado novos pacotes e não queria esperar o dia seguinte:
# mandb
Linux man-pages: mandb(8)
Referências
CertDepot: RHEL7: Locate, read, and use system documentation including man, info, and files in /usr/share/doc
The Linux Kernel Organization:The Linux man-pages project
Wikipedia: man page
Dúvidas ou sugestões? Deixe um comentário!