Diferença entre / e // [duplicado]

2

No prompt do bash, uma, três ou mais barras (/, ///, ////, ...) são tratadas como uma única barra, enquanto duas barras (//) são deixadas como estão:

12:07 $ cd /
12:07 $ pwd
/
12:07 $ cd //
12:07 $ pwd
//
12:07 $ ls
bin  boot  cdrom  dev  etc  home  initrd.img  lib  lib64  lost+found  media  mnt  opt  proc  root  run  sbin  srv  sys  tmp  usr  var  vmlinuz
12:07 $ cd ///
12:07 $ pwd
/
12:07 $ ls
bin  boot  cdrom  dev  etc  home  initrd.img  lib  lib64  lost+found  media  mnt  opt  proc  root  run  sbin  srv  sys  tmp  usr  var  vmlinuz

Versões usuais de suspeitos:

12:07 $ bash --version
GNU bash, version 4.3.11(1)-release (x86_64-pc-linux-gnu)

12:20 $ dpkg-query -s coreutils | grep Version
Version: 8.21-1ubuntu5
    
por iceman 25.11.2014 / 07:55

1 resposta

1

Para exibir o diretório atual bash mantém algum estado interno que não corresponde necessariamente ao caminho real (mais curto) para o diretório atual. Isso ajuda a manter o caminho se você cd através de links suaves.

O cd // (mas também quando se faz, por exemplo, cd //tmp ) não parece desencadear uma sanitização do caminho interno exibido por pwd , mas mais de dois / parecem acionar isso.

    
por 25.11.2014 / 08:08