Linux / Comandos / cd / Comando para mover-se para outro diretório
No Linux, o comando cd muda o diretório de trabalho do shell atual. Por exemplo, execute cd /etc e depois pwd para verificar sua localização atual.
Verifique a localização atual e mova-se
cd é a abreviação de change directory e é um comando incorporado em shells como o Bash. Você especifica o diretório para o qual deseja se mover como um argumento. O comando a seguir move para /etc e exibe essa localização.
cd /etc
pwd
Se a movimentação for bem-sucedida, o próprio comando cd geralmente não exibe nada. Certifique-se de que pwd exiba /etc. Mover não envolve mover arquivos ou alterar conteúdos, mas sim alterar a localização de referência do shell atual. O diretório de trabalho de outros terminais não muda.
Caminhos absolutos e caminhos relativos
Caminhos absolutos começam a partir do diretório raiz /. Por exemplo, o seguinte comando especifica /var/log independentemente de sua localização atual. O diretório deve existir e ser acessível.
cd /var/log
pwd
Caminhos relativos são baseados na localização atual. Por exemplo, para mover para /var e depois para log dentro dele, execute da seguinte forma.
cd /var
cd ./log
pwd
Se bem-sucedido, /var/log será exibido. . se refere ao diretório atual, então ./log é log relativo à localização atual. Se CDPATH estiver definido no Bash, cd log pode usar caminhos de pesquisa alternativos, mas cd ./log se refere explicitamente ao diretório atual. Se a movimentação falhar, resolva o erro antes de executar o próximo comando.
Movendo para o diretório pai e para a localização anterior
.. refere-se ao diretório pai. Se a localização atual for /var/log, o seguinte comando move para /var.
cd ..
pwd
Para retornar ao diretório visitado anteriormente, use o seguinte comando.
cd -
cd - no Bash move para o diretório de trabalho anterior e imprime seu caminho. Pode falhar se a localização anterior não tiver sido definida ou estiver inacessível. No exemplo acima, se você se moveu de /var/log para /var imediatamente antes, ele retornará para /var/log.
Movendo para o diretório home
Se você executar cd sem um caminho, o Bash se move para o diretório home definido na variável HOME. ~ também geralmente é expandido para o diretório home do usuário atual.
cd
pwd
A localização do diretório home difere dependendo da conta e das configurações, portanto, não assuma sempre que seja /home/user. cd ~/Documents se move sob o home para Documents, e se esse diretório não existir, ele falhará. cd ~user no Bash é uma forma de substituir user pelo nome real da conta para indicar o caminho home dessa conta. Ele não faz login como outro usuário nem concede permissões, e você deve ter direitos de acesso ao destino.
Caminhos com espaços e links simbólicos
Se um nome de diretório contiver espaços, coloque o caminho entre aspas. O exemplo abaixo mostra isso quando my folder está no diretório atual.
cd "my folder"
Ao usar o caminho home, você pode colocar ~ fora das aspas e colocar o restante entre aspas. O exemplo a seguir mostra quando my folder está sob o diretório home.
cd ~/"my folder"
Se você se moveu por meio de um link simbólico, o caminho exibido e o caminho real do diretório podem diferir. pwd -P do Bash mostra o caminho físico. cd -P se move com base no caminho físico interpretado a partir do link, e o resultado processado pelo .. pode diferir do comportamento padrão. Para mais detalhes, verifique Explicação do cd e pwd do Bash.
Verifique quando o movimento não for possível
- Caminho não encontrado: Verifique a ortografia e a sensibilidade a maiúsculas e minúsculas, assim como sua localização atual, e use
lspara ver se o nome existe. O arquivo não é um diretório, então você não pode acessá-lo comcd. - Permissão negada: Certifique-se de que você tem permissão de pesquisa para acessar o destino e seus diretórios principais. Em vez de alterar permissões arbitrariamente, solicite o acesso necessário ao administrador.
- Localização inesperada: Compare
pwdepwd -P, e verifique links simbólicos ou configuraçõesCDPATH.
Você pode visualizar a ajuda para os comandos internos no Bash com help cd. Em scripts, você precisa verificar o status de saída para impedir que o script execute operações subsequentes no diretório errado quando cd falhar.




