Qual é a diferença entre cd /
e cd //
? Podemos ver que adicionar /
ao final não faz nada. Mas quando eu faço cd //
e pwd
, descobri:
$ cd //
$ pwd
//
Qual é a diferença entre /
e //
? Um ls
em ambos os diretórios mostra o mesmo conteúdo. Por que é //
necessário?
Responder1
/
e //
estão apontando para o mesmo diretório. Verbarras repetidas em um caminho são equivalentes a uma única barra
Esse comportamento é exigido pelo POSIX e a maioria dos aplicativos segue o exemplo. A exceção é que “um nome de caminho que começa com duas barras sucessivas pode ser interpretado de uma maneira definida pela implementação”.
O que você está vendo não é, de fato, o Linux fazendo nada de especial com
//
o rastreamento de diretório atual do bash.
$ bash -c 'cd //; pwd'
//
$ bash -c 'cd //; /bin/pwd'
/