INTRO(1)

NOME
intro - Introdução para os comandos de usuários

DESCRIÇÃO
A seção 1 do manual descreve comandos e ferramentas do usuário, por exemplo, ferramentas de manipulação de arquivos, shells, compiladores, navegadores da web, visualizadores e editores de arquivos e imagens, e assim por diante.

NOTAS
O Linux é uma versão do UNIX e, como primeira aproximação, todos os comandos do usuário no UNIX funcionam exatamente da mesma maneira no Linux (e no FreeBSD e em muitos outros sistemas semelhantes ao UNIX).

No Linux, existem GUIs (interfaces gráficas do usuário), nas quais você pode apontar, clicar e arrastar e, esperançosamente, realizar o trabalho sem primeiro ler muita documentação. O ambiente UNIX tradicional é uma CLI (interface da linha de comandos), na qual você digita comandos para informar ao computador o que fazer. Isso é mais rápido e mais poderoso, mas requer descobrir quais são os comandos. Abaixo de um mínimo, para começar.

  Login
Para começar a trabalhar, você provavelmente precisará primeiro abrir uma sessão, fornecendo seu nome de usuário e senha. O programa login(1) agora inicia um shell (interpretador de comandos) para você. No caso de um login gráfico, você obtém uma tela com menus ou ícones e um clique do mouse inicia um shell em uma janela. Veja também xterm(1).

  O shell
Digita-se comandos no shell, o interpretador de comandos. Ele não está embutido, mas é apenas um programa e você pode alterar seu shell. Todo mundo tem seu próprio favorito. O padrão é chamado sh. Veja também ash(1), bash(1), chsh(1), csh(1), dash(1), ksh(1), zsh(1).

Uma sessão pode ser algo como:

    knuth login: aeb
    Senha: ********
    $ date
    Ter Ago  6 18:50:44 BRT 2002
    $ cal
         agosto 2002
    do se te qu qu se sá
                 1  2  3
     4  5  6  7  8  9 10
    11 12 13 14 15 16 17
    18 19 20 21 22 23 24
    25 26 27 28 29 30 31

    $ ls
    bin  tel
    $ ls -l
    total 2
    drwxrwxr-x   2 aeb       1024 ago  6 23:51 bin
    -rw-rw-r--   1 aeb         37 ago  6 23:52 tel
    $ cat tel
    maja    0501-1136285
    peter   0136-7399214
    $ cp tel tel2
    $ ls -l
    total 3
    drwxr-xr-x   2 aeb       1024 ago  6 23:51 bin
    -rw-r--r--   1 aeb         37 ago  6 23:52 tel
    -rw-r--r--   1 aeb         37 ago  6 23:53 tel2
    $ mv tel tel1
    $ ls -l
    total 3
    drwxr-xr-x   2 aeb       1024 ago  6 23:51 bin
    -rw-r--r--   1 aeb         37 ago  6 23:52 tel1
    -rw-r--r--   1 aeb         37 ago  6 23:53 tel2
    $ diff tel1 tel2
    $ rm tel1
    $ grep maja tel2
    maja    0501-1136285
    $

Aqui, digitar Control-D encerrou a sessão.

O $ aqui era o prompt de comando — é a maneira do shell indicar que está pronto para o próximo comando. O prompt pode ser personalizado de várias maneiras, e pode-se incluir itens como nome de usuário, nome da máquina, atual diretório, hora e assim por diante. Uma atribuição PS1="O que mais, mestre?" mudaria o prompt conforme indicado.

Vemos que existem comandos os date (que fornece data e hora) e cal (que fornece um calendário).

O comando ls lista o conteúdo do diretório atual — informa quais arquivos você possui. Com uma opção -l, ele fornece uma lista longa, que inclui o dono, o tamanho e a data do arquivo, e as permissões que as pessoas têm para ler e/ou alterar o arquivo.Por exemplo, o arquivo "tel" aqui possui 37 bytes, de propriedade de aeb e o dono pode lê-lo e gravá-lo, outros podem apenas lê-lo. Dono e permissões podem ser alterados pelos comandos chown e chmod.

O comando cat mostrará o conteúdo de um arquivo. (O nome vem de "concatenate and print": todos os arquivos fornecidos como parâmetros são concatenados e enviados para a "saída padrão" (consulte stdout(3)), aqui na tela do terminal.)

O comando cp (de "copy") vai copiar um arquivo.

O comando mv (de "move"), por outro lado, apenas o renomeia.

O comando diff lista as diferenças entre dois arquivos. Aqui não houve saída porque não houve diferenças.

O comando rm (de "remove") exclui o arquivo e tenha cuidado: já era! Não há lixeiras nem nada. Excluído significa perdido.

O comando grep (de "g/re/p") localiza ocorrências de uma string em um ou mais arquivos. Aqui encontra o número de telefone de Maja.

  Nomes de caminhos e o diretório atual
Os arquivos vivem em uma grande árvore, a hierarquia de arquivos. Cada um possui um nome-de-caminho descrevendo o caminho da raiz da árvore (chamada de /) para o arquivo. Por exemplo, um nome de caminho completo pode ser /home/aeb/tel. Sempre usar nomes de caminho completos seria inconveniente, e o nome de um arquivo no diretório atual pode ser abreviado, fornecendo apenas o último componente. É por isso que /home/aeb/tel pode ser abreviado para tel quando o diretório atual é /home/aeb.

O comando pwd imprime o diretório atual.

O comando cd muda o diretório atual.

Alternativamente, tente os comandos cd e pwd e explore o uso de cd: "cd", "cd .", "cd ..", "cd /" and "cd ~".

  Diretórios
O comando mkdir cria um novo diretório.

O comando rmdir remove um diretório se ele estiver vazio e, do contrário, reclama.

O comando find (com uma sintaxe bastante barroca) encontrará arquivos com nome ou outras propriedades. Por exemplo, "find . -name tel" localizaria o arquivo tel iniciando no diretório atual (que é chamado de .). E "find / -name tel" faria o mesmo, mas começando pela raiz da árvore. Pesquisas grandes em um disco com vários GB demoram e pode ser melhor usar locate(1).

  Discos e sistemas de arquivos
O comando mount anexa o sistema de arquivos encontrado em algum disco (ou disquete, ou CD-ROM e outros) à grande hierarquia do sistema de arquivos. E umount desanexa-o novamente. O comando df lhe dirá quanto do seu disco ainda está livre.

  Processos
Em um sistema UNIX, muitos processos do usuário e do sistema são executados simultaneamente. Aquele com quem você está falando é executado em primeiro plano, os outros no segundo plano. O comando ps mostrará quais processos estão ativos e quais números esses processos têm. O comando kill permite que você se livre deles. Sem opção, este é um pedido amigável: vá embora. E "kill -9" seguido pelo número do processo resulta em uma morte imediata do mesmo. Os processos em primeiro plano geralmente podem ser eliminados digitando Control-C.

  Obtendo informações
Existem milhares de comandos, cada um com muitas opções. Tradicionalmente, os comandos são documentados em páginas man, como esta, para que o comando "man kill" documente o uso do comando "kill" (e "man man" documente o comando "man"). O programa que eu man envia o texto através de um paginador, geralmente o less. Pressione a barra de espaço para obter a próxima página, pressione q para sair.

Na documentação, é habitual consultar as páginas man, fornecendo o nome e o número da seção, como em man(1). As páginas man são concisas e permitem encontrar rapidamente alguns detalhes esquecidos. Para os recém-chegados, é útil um texto introdutório com mais exemplos e explicações.

Muitos softwares do GNU e da FSF são fornecidos com arquivos info. Digite "info info" para obter uma introdução sobre o uso do programa info.

Tópicos especiais são geralmente tratados em guias HOWTOs. Confira em /usr/share/doc/howto/en e use um navegador se você encontrar arquivos HTML lá.

VEJA TAMBÉM
ash(1), bash(1), chsh(1), csh(1), dash(1), ksh(1), locate(1), login(1), man(1), xterm(1), zsh(1), wait(2), stdout(3), man-pages(7), standards(7)

COLOFÃO
Esta página faz parte da versão 5.10 do projeto Linux man-pages. Uma descrição do projeto, informações sobre relatórios de bugs e a versão mais recente desta página podem ser encontradas em https://www.kernel.org/doc/man-pages/.

TRADUÇÃO
A tradução para português brasileiro desta página man foi criada por André Luiz Fassone <lonely_wolf@ig.com.br>, Roberto Selbach Teixeira <robteix@zaz.com.br> e Rafael Fontenelle <rafaelff@gnome.org>.

Esta tradução é uma documentação livre; leia a Licença Pública Geral GNU Versão 3 (https://www.gnu.org/licenses/gpl-3.0.html) ou posterior para as condições de direitos autorais. Nenhuma responsabilidade é aceita.

Se você encontrar algum erro na tradução desta página de manual, envie um e-mail para a lista de discussão de tradutores (debian-l10n-portuguese@lists.debian.org).