por que o / var / mail / {username} = / Users / {username}?

0

Minha pergunta básica é por que esses dois caminhos apontam para casa (por exemplo, ~ )? Ele está apontando para a mesma casa ou é duplicado?

Eu duvido que esteja duplicado, então se não, como cd .. decide para qual diretório me levar?

    
por Eduardo Moreno 18.02.2016 / 19:21

2 respostas

0

Como o cd .. se comporta dependerá do shell, das configurações do shell e se (como é provável neste caso) links simbólicos estão envolvidos.

bash-4.1$ cd /var/tmp
bash-4.1$ mkdir -p real/cats
bash-4.1$ ln -s real/cats dogs
bash-4.1$ cd dogs/
bash-4.1$ pwd
/var/tmp/dogs
bash-4.1$ pwd -P
/var/tmp/real/cats
bash-4.1$ cd ..
bash-4.1$ pwd
/var/tmp
bash-4.1$ set -o physical
bash-4.1$ cd dogs
bash-4.1$ pwd
/var/tmp/real/cats
bash-4.1$ cd ..
bash-4.1$ pwd
/var/tmp/real
bash-4.1$ 

Investigar o diretório /var/mail com ls deve revelar se existem quaisquer links simbólicos executados pela Apple.

    
por 18.02.2016 / 19:56
0

No macOS (que eu acho que é porque você mencionou /Users ), a /var/mail/username é a caixa de entrada da caixa mbox formatada para o usuário username e /Users/username é o diretório inicial para o mesmo usuário.

Em uma instalação comum e não modificada do macOS, /var/mail/username não será um link simbólico para o diretório pessoal do usuário, nem /Users/username será um link para /var/mail/username .

Por padrão,

cd .. funcionará como cd -L .. , isto é, você será levado até o diretório pai lógico em vez do diretório pai físico ( cd -P .. ).

Do ksh -manual no macOS:

By default, symbolic link names are treated literally when finding the directory name. This is equivalent to the -L option. The -P option causes symbolic links to be resolved when determining the directory. The last instance of -L or -P on the command line determines which method is used.

    
por 10.01.2018 / 13:00