Como usar o comando man do Linux: segredos e princípios ocultos


0
Um prompt de terminal em um laptop Linux.
Fatmawati Achmad Zaenuri / Shutterstock

Tudo o que você precisa saber sobre o Linux está em suas páginas de manual. Por exemplo, você pode procurar um comando para realizar uma tarefa, mesmo que não saiba como é chamado. Mas como você pode encontrar as páginas de manual? Aqui estão alguns truques.

Manual Integrado do Linux

Há uma velha (da era de ouro do Unix) uma piada do Linux que o único comando que você precisa saber é man, o ponto de entrada do sistema para o manual do usuário. Há uma pitada de verdade nisso, mas mesmo man pode ser confuso no começo. Ou, mais precisamente, encontrar as informações necessárias pode ser confuso.

Você já sabia o que queria fazer, mas não sabia o nome do comando que executaria a tarefa? Provavelmente todos já estivemos lá. É como tentar procurar uma palavra no dicionário quando você não a conhece.

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 do primeiro ano. O que são e o que eles significam? Você verá coisas como man(2) ou man(5) citados na documentação e na internet. Você verá referências a comandos seguidos por 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 de pesquisa simples, dentro man é bem fácil quando você sabe como fazê-lo. De fato, existem algumas maneiras legais de pesquisar e navegar dentro man. Vamos acender e dar uma olhada!

RELACIONADOS: 37 comandos importantes do Linux que você deve conhecer

Como abrir o manual

Usar man, você digita man na linha de comando, seguida por um espaço e um comando Linux. man abre o manual do Linux para a “página de manual” que descreve esse comando – se for possível encontrá-lo, é claro.

Vamos digitar o seguinte e ver o que man diz sobre man:

man man

O comando "man man" em uma janela do terminal.

A página de manual para man abre.

A página de manual do "man 1" é aberta em uma janela do terminal.

Como você pode ver, este é o man(1) página.

Siga estas dicas para navegar na página:

  • Para percorrer a página de 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 de manual uma tela por vez: Pressione a barra de espaço e as teclas PgDn e PgUp.
  • Para mover diretamente para a parte superior ou inferior da página de manual: Pressione as teclas Home e End.

Se você pressionar H, você entra na seção de ajuda e vê uma tabela de teclas alternativas que pode usar. Os listados acima provavelmente parecerão mais naturais para a maioria das pessoas.

Sair man, apenas pressione Q.

A anatomia de um homem

No topo da página, você vê os títulos “Nome” e “Sinopse”. Há uma convenção no layout das páginas de 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 de manual, porque alguns deles se aplicam apenas a certos tipos de comandos.

A seguir, alguns dos títulos que você pode ver:

  • Nome: O nome do comando que a página de manual está descrevendo.
  • Sinopse: Um resumo do comando e sua sintaxe.
  • Configuração: Detalhes de configuração para um dispositivo.
  • Descrição: Uma explicação do que o programa faz.
  • Opções: Uma descrição das opções da linha de comandos que o comando aceita.
  • Status de saída: Possíveis valores de status de saída para o comando e o que pode fazer com que eles sejam usados.
  • Valor de retorno: Se a página de manual for para uma rotina de biblioteca, isso descreverá o valor que a rotina de biblioteca pode enviar de volta à função que chamou essa rotina.
  • Erros: Uma lista dos valores que podem ser colocados em errno no caso de um erro.
  • Meio 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 das versões do kernel ou da biblioteca do Linux 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.
  • De acordo com: Uma descrição de quaisquer padrões com os quais o comando possa estar em conformidade, como POSIX.
  • Notas: Notas diversas.
  • Insetos: Problemas conhecidos.
  • Exemplos: Um ou mais exemplos demonstrando o uso do comando.
  • Autores: As pessoas que escreveram ou mantêm o comando.
  • Veja também: Leitura recomendada relacionada ao comando ou tópico.

O homem Seções

Se você rolar algumas páginas, verá uma lista das seções no manual.

Seções do manual listadas em "man" em uma janela do terminal.

As seções são:

  1. Comandos gerais: Comandos que você usa na linha de comando.
  2. Chamadas do sistema: Funções que o kernel fornece que um programa pode chamar.
  3. Funções da biblioteca: Os programas de funções podem chamar bibliotecas de códigos (principalmente o padrão C).
  4. Arquivos especiais: Normalmente, dispositivos como os encontrados em / dev e seus drivers.
  5. Formatos de arquivo e convenções: Formatos para arquivos, como o passwd, cron mesa e tar arquivar arquivos.
  6. Jogos: Descrições de comandos, como fortune, que exibem aspas de um banco de dados quando você as executa.
  7. Diversos: Descrições de coisas como inodes, parâmetros de inicialização e man em si.
  8. Administração do Sistema: Comandos e daemons geralmente reservados para root trabalhar com.
  9. Rotinas do Kernel: Informações relacionadas à operação interna do kernel. Isso inclui interfaces de função e variáveis ​​úteis para programadores que estão gravando 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 nessa 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, ela exibia 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 digitado. Claro, encontrou man(1) antes man(7).

Se você quer forçar man Para encontrar uma entrada de uma seção específica, você deve incluir o número da seção na linha de comando.

Por exemplo, digite o seguinte para abrir a entrada para man na seção sete:

man 7 man

O comando "man 7 man" em uma janela do terminal.

O manual abre para a entrada do homem na seção sete.

Uma página "man" está aberta na seção sete do manual em uma janela do terminal.

Esta página de manual fornece instruções para escrever páginas de manual. Ele descreve o formato do arquivo e as macros que você pode usar para fazer parte do trabalho. o man(1) página na seção um, analisamos anteriormente descrito como usar man em si.

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, porém, 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. o -f A opção (whatis) pesquisa os títulos da página e retorna uma lista de correspondências.

Neste exemplo, digite o seguinte:

man -f man

O comando "man -f man" em uma janela do terminal.

As duas páginas de manual para man são listados junto com seus números de seção e descrições curtas. Porém, tenha cuidado – algumas entradas têm o mesmo nome, mas descrevem comandos e funções diferentes.

Por exemplo, digitamos o seguinte:

man -f printf

O comando "man -f printf" em uma janela do terminal.

Parece que duas entradas foram encontradas para printf: o primeiro na seção um e outro na seção três. No entanto, esses são comandos diferentes. A página do manual na seção um descreve a linha de comando printf comando, que formata a saída na janela do terminal. A página do manual na seção três descreve o printf família de funções de biblioteca na linguagem de programação C.

Também é possível pesquisar nas descrições breves, bem como nos títulos das páginas. Para fazer isso, você usa o -k opção (apropos). Isso também corresponderá às ocorrências do termo de pesquisa em outras palavras mais longas.

Digitamos o seguinte:

man -k printf

O comando "man -k printf" em uma janela do terminal.

Muitos desses comandos são descritos nas mesmas poucas páginas de manual, porque sua principal funcionalidade é basicamente a mesma. A página de manual para vprintf descreve a funcionalidade de 10 dos comandos listados na imagem acima.

Você pode aproveitar essa funcionalidade para procurar informações relacionadas ao que você está tentando alcançar, mesmo que não saiba o nome do comando que deseja usar.

Digamos que você queira alterar a senha de uma conta de usuário. Podemos procurar por qualquer comando que mencione “user” nos títulos ou descrições da página de manual. Podemos então canalizá-lo grep para procurar entradas que contenham “senha”.

Para fazer isso, digite o seguinte:

man -k 'user ' | grep password

o

Como colocamos a palavra “usuário” entre aspas simples e incluímos um espaço no final, ela encontrará apenas correspondências para “usuário” e não “usuários”. Uma rápida olhada nos resultados da pesquisa mostra que o candidato provável é passwd.

Como é uma página de manual da seção e não precisamos incluir o número da seção no comando, digite o seguinte:

man passwd

Digamos que precisamos de um comando que conte o número de palavras em um arquivo de texto. Digitamos o seguinte para ver se existe algo assim:

man -k word | grep count

O comando "man -k word | grep count" em uma janela do terminal.

Para descobrir tudo o que há para saber sobre a contagem de palavras, digite este comando:

man wc

Falando de wc, também podemos usar o -k (a propósito) com um único período (.) como destino de pesquisa, que corresponderá a tudo. Se canalizarmos isso wc e use o -l (linhas), ele informa quantas páginas de manual existem no computador.

Para fazer tudo isso, digite o seguinte comando:

man -k . | wc -l

O comando "man -k. | Wc -l" em uma janela do terminal.

Existem 6.706 páginas de manual neste computador Ubuntu, mas não se surpreenda se o número for diferente no seu. Pode variar dependendo de quais pacotes de software e utilitários você possui em sua máquina e quais páginas de manual foram pré-instaladas.

Pesquisando em uma página de homem

Você também pode procurar para frente ou para trás a partir de sua posição atual em uma página de manual.

Neste exemplo, digite o seguinte para abrir a página de manual do history comando:

man history

O comando "man history" em uma janela do terminal.

Para pesquisar adiante, pressionamos a barra (/) e digite a palavra “evento”. O alvo da pesquisa aparece na parte inferior da janela do terminal e pressionamos Enter para iniciar a pesquisa.

O comando "/ event" na página "history man" em uma janela do terminal.

A janela exibe o primeiro resultado de todas as correspondências encontradas e elas são destacadas.

Uma página "homem histórico" com resultados de pesquisa para "evento" destacados em uma janela do terminal.

Pressione “n” para passar de resultado em resultado na parte inferior da página. Para pesquisar na página de manual, pressione “N”; isso o levará de volta ao topo da página.

Para ativar e desativar o destaque, pressione Esc + U.

Se você estiver perto da parte inferior da página de manual e quiser pesquisar para cima, pressione o ponto de interrogação (?) E digite o termo de pesquisa. Procuramos por “entrada”.

Um termo de pesquisa "? Entry" para pesquisar para cima em uma página de manual em uma janela do terminal.

Novamente, todos os resultados correspondentes são destacados.

Resultados para o termo de pesquisa "entrada" destacado em uma página de manual em uma janela do terminal.

Para procurar o próximo resultado correspondente, pressione “n” para ir para o início da página do manual. Pressione “N” para ir para o resultado da correspondência anterior e avançar para o final da página do manual.

Há outra maneira de pesquisar em uma página de manual. Como oculta todas as linhas que não contêm uma correspondência com o termo de pesquisa, é melhor usar os números de linha com essa técnica.

Se digitarmos “-N” e pressionar Enter, podemos ver os números de linha na página do manual.

Uma página de manual com números de linha em uma janela do terminal.

Pressionamos oe comercial (&), digite nosso termo de pesquisa (número) e pressione Enter.

Uma pesquisa de linha correspondente "& / number" em uma página de manual em uma janela do terminal.

Somente as linhas que contêm nosso termo de pesquisa são exibidas.

Linhas que contêm a palavra "número" em uma página de manual em uma janela do terminal.

É fácil percorrê-los e identificar qualquer um que pareça interessante. Achamos que a linha 292 parece promissora, então queremos ir para essa seção da página do manual e conferir.

Para ver todas as linhas novamente, pressionamos oe comercial (&) e, em seguida, pressione Enter.

O comando "& /" para sair das linhas correspondentes é exibido em uma página de manual em uma janela do terminal.

Digitamos “292” e depois “g” para ir para essa linha.

Um comando para mover para a linha "292" em uma página de manual em uma janela do terminal.

Assim que digitar “g”, somos levados para a linha 292 (e é por isso que “g” não aparece na imagem acima). A linha 292 é exibida na parte superior da janela do terminal.

Linha 292 na parte superior da tela em uma página de manual em uma 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 de manual. Mesmo com comandos que você acha que conhece bem, é uma aposta segura que existem outras opções que você nunca ouviu falar.

Você também encontrará definitivamente comandos que não sabia que existiam. Com tantas maneiras diferentes de pesquisar e rastrear informações, é incrível ter tudo ao seu alcance.


Like it? Share with your friends!

0

0 Comments

Your email address will not be published. Required fields are marked *