[Tutorial Linux] Terminal: Navegando nos diretórios
Tags: linux, diretorio, cd, braziliandevs
Published: 2020-08-02 16:40:46

## Mudando de diretório

Para mudar de diretório, usamos o comando:

```
$ cd <nome_do_diretório_que_deseja_ir>
```

- **$** indica que você deve usar o **usuário comum** para fazer essa operação.
- digite o nome do diretório para o qual você deseja ir, sem os sinais **< e >**.

Exemplo:

Para seguir até a pasta de downloads, basta digitar:

```
$ cd Downloads/
```

E no terminal será exibido:

```
usuario@computador:~/Downloads
```

- **cd** do inglês, *change directory*, serve para mudar de diretório/pasta.

![mudando de diretório](https://dev-to-uploads.s3.amazonaws.com/i/36tl09c6pasagfpz2lr3.gif)

## Usando a tecla TAB para completar o nome do diretório

Aqui vale a dica de iniciar a escrita do diretório desejado e utilizar a tecla **TAB** para a função de autocompletar.

```
$ cd Do [pressione a tecla 'tab' para completar]
```

Se houver mais de um diretório com as mesmas letras iniciais, será preciso apertar a tecla **TAB** duas vezes para que o terminal retorne o nome das pastas e você possa escolher qual precisa.

```
$ cd Do [pressionando o 'tab' duas vezes]
Documentos/     /Downloads
```

![usando a tecla tab](https://dev-to-uploads.s3.amazonaws.com/i/a02gscprcv9l7n8wuhig.gif)

## Navegando para um determinado diretório de qualquer lugar

Também é possível entrar no diretório citando o caminho completo. Exemplo:

```
$ cd /usr/games
```

![entrando no diretório games](https://dev-to-uploads.s3.amazonaws.com/i/ui3gxrkodgco8x5kwex3.gif)

## Atalho para a home do usuário

Caso deseje entrar em algum diretório que esteja na home do usuário, pode se usar o sinal diacrítico til **~**. Exemplo:

```
$ cd ~/Imagens
```

![entrando no diretório imagens](https://dev-to-uploads.s3.amazonaws.com/i/ty62g9foetzz8nm2me7y.gif)

## Retornar ao diretório acima

Para retornar um diretório acima do atual, digite:

```
$ cd ..
```

![retornando ao diretório pai](https://dev-to-uploads.s3.amazonaws.com/i/s1nz79yy1snrpazfgjkn.gif)

## Navegando para o diretório home do usuário, de qualquer lugar

Para retornar diretamente a pasta /home/seu_nome_de_usuário, não importa onde você esteja, digite:

```
$ cd
```

![indo direto para o diretório home](https://dev-to-uploads.s3.amazonaws.com/i/f2cmatcjjgati93lzlwa.gif)

## Retornar dois diretórios acima

Para retornar duas pastas acima da atual, digite:

```
$ cd ../..
```

![entrando no diretório avô](https://dev-to-uploads.s3.amazonaws.com/i/eg1esmgtnqqud9k7viti.gif)

## Retornar ao diretório anterior

Para retornar ao diretório anterior, no qual você estava

```
$ cd -
```

- **-**, sinal de menos. Esse operador é equivalente ao comando

```
$ cd "$OLDPWD" && pwd
```

- **"$OLDPWD"** é uma variável que guarda o caminho do último diretório visitado.
- **&&** é o operador booleano **E (AND)**. Faz com que o terminal execute um comando **E** em seguida o outro.
- **pwd** do inglês, *print name of current/working directory*, imprime na tela o nome do diretório atual.

Exemplo do uso do **cd -**:

![voltando ao diretório](https://dev-to-uploads.s3.amazonaws.com/i/pczspa7oo60fwbtjbyef.gif)

Exemplo do uso do **pwd**:

![usando pwd](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/qp3os3xdkmy77s8iyobi.gif)

Exemplo do uso do **cd $OLDPWD**:

![usando $OLDPWD](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/b4to5vxdzan1q0o907ek.gif)

Exemplo do uso do **cd $OLDPWD && pwd**:

![usando $OLDPWD e pwd](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/g5hj8h2rzolznbohlr90.gif)

## Diretório raiz

A exibição de:

```
usuario@computador:/$
```

no terminal indica que você está no diretório raiz. Perceba que depois dos dois pontos **não temos** o sinal diacrítico til, mas temos a **barra**.

Para seguir diretamente para o diretório raiz basta digitar:

```
$ cd /
```

![indo para o diretório raiz](https://dev-to-uploads.s3.amazonaws.com/i/sway2uhdsql8eaw9x25q.gif)

## Navegando por diretório com nomes compostos

Para diretórios com nomes compostos, usa-se a **contrabarra (barra invertida)** ao final de cada palavra. Exemplo:

```
$ cd Área\ de\ Trabalho
```

Ou ainda, usa-se **aspas (duplas ou simples)**. Assim,

```
$ cd 'Área de Trabalho'
```