Um / no fim do nome de um diretório / pasta é opcional . Na maioria das vezes, incluir ou omitir a barra final em um nome de diretório não altera o efeito de um comando.
Portanto, cd ../ é equivalente a cd .. .
Caminhos que não iniciam com / são caminhos relativos; eles são resolvidos em relação ao diretório atual .
Todo diretório tem entradas especiais:
- uma entrada de diretório chamada
.que resolve para o próprio diretório - uma entrada de diretório chamada
..que resolve para o pai do diretório (ou seja, o diretório que contém esse diretório)
Portanto, cd ../ e cd .. mudam de diretório para o pai do diretório atual . Assim, se você começar em /home/fazlan e executar cd .. ou cd ../ , você acabará em /home .
Por outro lado, /.. é um caminho absoluto (embora incomum). / é a raiz do sistema de arquivos - o diretório que você acessa se você subir na hierarquia de diretórios até o fim. (Usando a mesma metáfora parent e child , dizemos que / é o ancestor de tudo no sistema de arquivos.)
Como .. significa "o diretório pai deste diretório" e / significa "a parte superior do sistema de arquivos," /.. significa "o diretório pai da parte superior do sistema de arquivos".
Mas o que significa falar sobre o diretório que contém / ? Bem, / é uma exceção. Como nenhum diretório contém, , dizemos que o pai de / é ele mesmo. Portanto, em / , .. é / . Conseqüentemente, /.. é o mesmo que / .
É por isso que cd ../ leva você até um diretório de onde você começou, enquanto cd /.. leva você ao topo. As maneiras mais elegantes e fáceis de ler essas coisas são cd .. e cd / , respectivamente.