Tudo o que você precisa saber sobre o Linux está nas páginas de manual. Por exemplo, você pode pesquisar um comando para realizar uma tarefa, mesmo se não souber como ele se chama. Mas como você pode encontrar as páginas do manual? Aqui estão alguns truques.
Índice
Manual Integrado do Linux
Existe uma velha (da era dourada do Unix) piada do Linux que diz que o único comando que você precisa saber é man
o ponto de entrada do sistema para o manual do usuário . Há um pouco de verdade nisso, mas até man
pode ser confuso no início. Ou, mais precisamente, encontrar as informações de que você precisa pode ser confuso.
Você já sabia o que queria fazer, mas não sabia o nome do comando que executaria a tarefa? Provavelmente todos nós já passamos por isso. É como tentar procurar uma palavra no dicionário sem conhecê-la.
Então, como você pode encontrar o que está procurando? Bem, existem maneiras de contornar esse dilema com man
.
Os números são outra questão dos calouros. O que são e o que significam? Você verá coisas como man(2)
ou man(5)
citadas na documentação e na Internet. Você verá referências a comandos seguidos de números também, como mount(2)
e mount(8)
. Certamente não pode haver mais de um mount
comando, certo? Como veremos, os números são importantes e relativamente simples.
Falando em coisas simples, pesquisar dentro man
é muito fácil quando você sabe como fazê-lo. Na verdade, existem algumas maneiras interessantes de pesquisar e navegar nele man
. Vamos ligar e dar uma olhada!
Como abrir o manual
Para usar man
, você digita man
na linha de comando, seguido por um espaço e um comando Linux. man
abre o manual do Linux na “página man” que descreve esse comando – se ele puder encontrá-lo, é claro.
Vamos digitar o seguinte e ver o que man
diz sobre man
:
homem homem
A página do manual para é man
aberta.
Como você pode ver, esta é a man(1)
página.
Siga estas dicas para navegar na página:
- Para percorrer a página do manual uma linha por vez: Use a roda de rolagem do mouse ou as setas para cima e para baixo e as teclas Enter.
- Para percorrer a página do manual uma tela por vez: Pressione a barra de espaço e as teclas PgDn e PgUp.
- Para ir diretamente para a parte superior ou inferior da página de manual: Pressione as teclas Home e End.
Se você pressionar H, entrará na seção de ajuda e verá uma tabela de combinações de teclas alternativas que você pode usar. Os listados acima provavelmente parecerão mais naturais para a maioria das pessoas.
Para sair man
, basta pressionar Q.
A página da anatomia de um homem
Na parte superior da página, você vê os títulos “Nome” e “Sinopse”. Existe uma convenção para o layout das páginas do manual. Existem páginas de manual para comandos, programas e funções de programação (rotinas de biblioteca). Você não verá todos esses títulos em todas as páginas do manual, porque alguns deles se aplicam apenas a certos tipos de comandos.
A seguir estão alguns dos títulos que você pode ver:
- Nome: o nome do comando que a página de manual descreve.
- Sinopse: Um resumo do comando e sua sintaxe.
- Configuração: detalhes de configuração de um dispositivo.
- Descrição: uma explicação do que o programa faz.
- Opções: uma descrição das opções de linha de comando que o comando aceita.
- Status de saída: Valores de status de saída possíveis para o comando e o que pode fazer com que sejam usados.
- Valor de retorno: se a página do manual for para uma rotina de biblioteca, isso descreve o valor que a rotina de biblioteca pode enviar de volta para a função que chamou essa rotina.
- Erros: Uma lista dos valores que podem ser colocados em
errno
caso de erro . - Ambiente: uma lista das variáveis de ambiente que afetam o comando ou programa e de que maneira.
- Arquivos: uma lista dos arquivos que o comando ou programa usa, como arquivos de configuração.
- Atributos: um resumo de vários atributos do comando.
- Versões: Detalhes do kernel Linux ou versões de biblioteca em que uma chamada de sistema ou função de biblioteca apareceu pela primeira vez ou mudou significativamente em relação às versões anteriores.
- Em conformidade com: Uma descrição de todos os padrões com os quais o comando pode estar em conformidade, como POSIX .
- Notas: notas diversas.
- Bugs: problemas conhecidos.
- Exemplos: Um ou mais exemplos que demonstram o uso do comando.
- Autores: as pessoas que escreveram ou mantêm o comando.
- Veja também: Leituras recomendadas relacionadas ao comando ou tópico.
As Seções do homem
Se você rolar algumas páginas para baixo, verá uma lista das seções do manual.
As seções são:
- Comandos gerais: comandos que você usa na linha de comando.
- Chamadas do sistema: funções que o kernel fornece e que um programa pode chamar.
- Funções de biblioteca: os programas de funções podem chamar bibliotecas de código (principalmente o padrão C).
- Arquivos especiais: geralmente dispositivos, como os encontrados em / dev, e seus drivers.
- Formatos de arquivo e convenções: Formatos de arquivos, como o
passwd
,cron
mesa, etar
ficheiros de arquivo. - Jogos: descrições de comandos, como
fortune
, que exibem citações de um banco de dados quando você os executa. - Diversos: Descrições de itens como inodes, parâmetros de inicialização e
man
ele mesmo. - Administração do sistema: Comandos e daemons normalmente reservados para
root
trabalhar. - Rotinas do kernel: Informações relacionadas ao funcionamento interno do kernel. Isso inclui interfaces de função e variáveis úteis para programadores que estão escrevendo drivers de dispositivo, por exemplo. Na maioria dos sistemas, esta seção não está instalada.
Quando você vê um comando seguido por um número, está se referindo à descrição desse comando naquela seção do manual. Por exemplo, man(1)
refere-se à entrada na seção um do manual que descreve o man
comando.
Na imagem acima, você vê uma referência a man(7)
. Isso significa que há mais informações sobre man
em outra seção. Quando abrimos a página do manual pela primeira vez, ela foi exibida man(1)
. Se você digitar apenas man
sem número de seção, man
pesquisa todas as seções em ordem, procurando uma entrada para o comando que você digitou. Claro, ele encontrou man(1)
antes man(7)
.
Se você deseja forçar man
a localização de uma entrada de uma seção específica, deverá incluir o número da seção na linha de comando.
Por exemplo, digitamos o seguinte para abrir a entrada para man
na seção sete:
homem 7 homem
O manual abre para a entrada do homem na seção sete.
Esta página do manual fornece instruções para escrever páginas do manual. Ele descreve o formato de arquivo e as macros que você pode usar para fazer parte do trabalho para você. A man(1)
página na seção um que vimos anteriormente descreveu como usar a man
si mesma.
Como Encontrar Entradas nas Seções
Normalmente, se você simplesmente deseja saber como usar um comando, não precisa fornecer um número de seção. man
encontrará a entrada padrão que descreve como usar esse comando na seção um do manual. Às vezes, entretanto, você precisa abrir uma entrada de comando em uma seção específica porque deseja informações diferentes.
Você pode descobrir facilmente quais seções do manual contêm entradas para um comando. Cada página de manual possui um título e uma breve descrição. A -f
opção (whatis) pesquisa os títulos das páginas e retorna uma lista de correspondências.
Para este exemplo, digitamos o seguinte:
man -f man
As duas páginas do manual para man
são listadas junto com seus números de seção e descrições resumidas. Porém, tenha cuidado – algumas entradas têm o mesmo nome, mas descrevem diferentes comandos e funções.
Por exemplo, digitamos o seguinte:
man -f printf
Parece que foram encontradas duas entradas para printf
: a primeira na seção um e outra na seção três. No entanto, esses são comandos diferentes. A página do manual na seção um descreve o comando da linha de printf
comando, que formata a saída na janela do terminal . A página man na seção três descreve a printf
família de funções de biblioteca na linguagem de programação C .
Também é possível pesquisar nas descrições curtas, bem como nos títulos das páginas. Para fazer isso, você usa a -k
opção (apropos). Isso também corresponderá às ocorrências do termo de pesquisa dentro de outras palavras mais longas.
Nós digitamos o seguinte:
man -k printf
Muitos desses comandos são descritos nas mesmas páginas do manual porque sua funcionalidade principal é basicamente a mesma. A página do manual vprintf
descreve a funcionalidade de 10 dos comandos listados na imagem acima.
Você pode aproveitar essa funcionalidade para pesquisar informações relacionadas ao que está tentando alcançar, mesmo se não souber o nome do comando que deseja usar.
Digamos que você queira alterar a senha de uma conta de usuário. Podemos pesquisar qualquer comando que mencione “usuário” nos títulos ou descrições das páginas de manual. Podemos então canalizá-lo grep
para procurar entradas que contenham “senha”.
Para fazer isso, digitamos o seguinte:
man -k 'usuário' | senha grep
Como colocamos a palavra “usuário” entre aspas simples e incluímos um espaço no final, ele só encontrará correspondências para “usuário”, não “usuários”. Uma rápida olhada nos resultados da pesquisa nos mostra o provável candidato passwd
.
Como é uma página de manual da seção um e não precisamos incluir o número da seção no comando, digitamos o seguinte:
homem passwd
Digamos que precisamos de um comando que conte o número de palavras em um arquivo de texto. Nós digitamos o seguinte para ver se algo assim existe:
palavra -k homem | contagem grep
Para descobrir tudo o que há para saber sobre contagem de palavras, digitamos este comando:
homem wc
Falando nisso wc
, também podemos usar a -k
opção (apropos) com um único ponto ( .
) como o destino da pesquisa, que irá corresponder a tudo. Se canalizarmos isso wc
e usarmos a -l
opção (linhas), isso nos dirá quantas páginas de manual existem no computador.
Para fazer tudo isso, digitamos o seguinte comando:
man -k. | wc -l
Existem 6.706 páginas de manual neste computador Ubuntu, mas não se surpreenda se o número for diferente no seu. Isso pode variar dependendo de quais pacotes de software e utilitários você tem em sua máquina e quais páginas de manual foram pré-instaladas.
Pesquisando em uma página de homem
Você também pode pesquisar para frente ou para trás em sua posição atual dentro de uma página de manual.
Para este exemplo, digitamos o seguinte para abrir a página de manual do history
comando:
história do homem
Para pesquisar para frente, pressionamos a barra ( /
) e, em seguida, digitamos a palavra “evento”. O destino da pesquisa aparece na parte inferior da janela do terminal e pressionamos Enter para iniciar a pesquisa.
A janela exibe o primeiro resultado de todas as correspondências encontradas e são realçadas.
Pressione “n” para mover de resultado em resultado em direção ao final da página. Para pesquisar para trás na página do manual, pressione “N”; isso o levará de volta ao topo da página.
Para ativar e desativar o realce, pressione Esc + U.
Se você estiver próximo ao final da página do manual e quiser pesquisar para cima, pressione o ponto de interrogação (?) E digite o termo de pesquisa. Pesquisamos por “entrada”.
Novamente, todos os resultados correspondentes são destacados.
Para pesquisar o próximo resultado correspondente, pressione “n” para mover em direção ao início da página do manual. Pressione “N” para ir para o resultado correspondente anterior e mover em direção ao final da página do manual.
Existe outra maneira de pesquisar uma página de manual. Ele oculta todas as linhas que não contêm uma correspondência com o seu termo de pesquisa, portanto, é melhor usar números de linha com essa técnica.
Se digitarmos “-N” e pressionarmos Enter, podemos ver os números das linhas na página do manual.
Pressionamos o “e” comercial (&), digitamos nosso termo de pesquisa (número) e pressionamos Enter.
Apenas as linhas que contêm nosso termo de pesquisa são exibidas.
É fácil dar uma olhada neles e localizar qualquer um que pareça interessante. Achamos que a linha 292 parece promissora, então queremos ir para essa seção da página de manual e dar uma olhada.
Para ver todas as linhas novamente, clicamos no “e” comercial (&) e, em seguida, pressionamos Enter.
Digitamos “292” e “g” para ir para essa linha.
Assim que digitarmos “g”, seremos levados para a linha 292 (é por isso que o “g” não aparece na imagem acima). A linha 292 é então exibida na parte superior da janela do terminal.
Você pode pressionar “-n” e pressionar Enter para remover os números de linha.
Leia o Fabulous Manual
Há muitas informações nas páginas do manual. Mesmo com comandos que você acha que conhece bem, pode apostar que existem outras opções das quais você nunca ouviu falar.
Você também encontrará comandos que não sabia que existiam. Com tantas maneiras diferentes de pesquisar e rastrear informações, é incrível ter tudo ao seu alcance.