Nesta aula, você aprenderá os comandos fundamentais para se movimentar pelo sistema de arquivos do Linux. Dominar pwd, cd e ls é o primeiro passo para se sentir confortável no terminal. Além disso, entenderemos caminhos absolutos e relativos, diretórios especiais e atalhos que agilizam o trabalho.

pwd, cd, ls

O comando pwd (print working directory) exibe o caminho completo do diretório atual. Use-o sempre que se perder.

$ pwd
/home/usuario

O comando cd (change directory) muda o diretório atual. Basta fornecer o caminho de destino.

$ cd /tmp
$ pwd
/tmp

O comando ls lista o conteúdo do diretório atual. Por padrão, mostra apenas nomes de arquivos e pastas.

$ ls
documentos  downloads  imagens

Opções comuns: -l (detalhado), -a (inclui ocultos), -h (tamanhos legíveis).

$ ls -la
total 12
drwxr-xr-x  3 usuario usuario 4096 jan 1 12:00 .
drwxr-xr-x 10 root    root    4096 jan 1 10:00 ..
drwxr-xr-x  2 usuario usuario 4096 jan 1 12:00 documentos

Caminhos absolutos e relativos

Um caminho absoluto começa com a barra / (raiz) e especifica a localização completa a partir da raiz do sistema. Exemplo: /home/usuario/documentos.

Um caminho relativo é baseado no diretório atual. Não começa com /. Exemplo: se você está em /home/usuario, o caminho relativo documentos refere-se a /home/usuario/documentos.

Exemplo prático:

$ pwd
/home/usuario
$ cd documentos    # caminho relativo
$ pwd
/home/usuario/documentos
$ cd /tmp          # caminho absoluto
$ pwd
/tmp

Use caminhos absolutos quando quiser garantir que está acessando o local exato, independentemente do diretório atual. Caminhos relativos são mais curtos e flexíveis para scripts.

Diretórios especiais (. .. ~)

O diretório . (ponto) representa o diretório atual. É útil em comandos como cp ou mv para indicar "aqui".

O diretório .. (dois pontos) representa o diretório pai. Use para subir um nível na hierarquia.

$ pwd
/home/usuario/documentos
$ cd ..
$ pwd
/home/usuario

O til ~ é um atalho para o diretório home do usuário atual. Equivale a /home/usuario (ou /root para root).

$ cd ~
$ pwd
/home/usuario
$ cd ~/Downloads
$ pwd
/home/usuario/Downloads

Exemplo combinando:

$ pwd
/home/usuario/documentos
$ ls ..
downloads  imagens  documentos  videos
$ cd ../downloads
$ pwd
/home/usuario/downloads

Atalhos

Alguns atalhos que aumentam a produtividade no terminal:

  • Tab: Autocompleta comandos, caminhos e nomes de arquivos. Pressione Tab uma vez para completar (se único) ou duas vezes para listar opções.
  • Ctrl + C: Interrompe o comando atual.
  • Ctrl + D: Sai do terminal ou envia EOF.
  • Ctrl + L: Limpa a tela (equivalente ao comando clear).
  • Ctrl + A: Vai para o início da linha.
  • Ctrl + E: Vai para o final da linha.
  • Seta para cima/baixo: Navega pelo histórico de comandos.
  • cd -: Volta para o diretório anterior.

Exemplo com cd -:

$ pwd
/home/usuario/documentos
$ cd /tmp
$ pwd
/tmp
$ cd -
$ pwd
/home/usuario/documentos

Use history para ver comandos recentes e !n para reexecutar o comando número n.

$ history
  1  pwd
  2  cd /tmp
  3  cd -
$ !2
cd /tmp

Referências

Exercícios

  1. Qual é a saída do comando pwd se você acabou de abrir o terminal? (Considere que o usuário é aluno)

    /home/aluno
  2. Você está em /home/aluno/Documentos. Escreva um comando cd usando caminho relativo para ir para /home/aluno/Downloads.

    cd ../Downloads
  3. O que faz o comando cd ~/..?

    Muda para o diretório pai do home (/home).

  4. Explique a diferença entre os caminhos /tmp e tmp.

    /tmp é um caminho absoluto (raiz do sistema). tmp é um caminho relativo (subpasta do diretório atual).

  5. Qual atalho de teclado você usaria para completar automaticamente o nome de um diretório longo?

    Tecla Tab.