O que é o diretório barra dupla (//)?

24

Por engano, digitei cd // em vez de cd / . Para minha surpresa, o diretório atual apareceu como // .

O que é esse diretório? Por que existe?

apple@snipped $ pwd
/home/apple
apple@snipped $ cd /
apple@snipped $ pwd
/
apple@snipped $ cd //
apple@snipped $ pwd
//
apple@snipped $ cd ///
apple@snipped $ pwd
/
    
por Zabba 29.01.2011 / 02:57

1 resposta

37

// é geralmente o mesmo que / . /// deve ser o mesmo que / .

ls teria mostrado que cd // levou você ao diretório raiz, o mesmo que cd / faz.

$ cd /
$ ls
bin
boot
dev
...
$ cd //
$ ls
(same as above)

A maneira técnica de confirmar que eles são definitivamente o mesmo diretório é:

$ cd /
$ stat -c "%i" .
2
$ cd //
$ stat -c "%i" .
2

eles imprimirão o mesmo número de inode, o que significa que são a mesma coisa.

Os detalhes são documentados na especificação de definição de nome de caminho POSIX :

% bl0ck_qu0te%     
por Mikel 29.01.2011 / 03:03