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

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

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

Duvido que esteja duplicado, então, se não, como cd ..decidir para qual diretório me levar de volta?

Responder1

O cd ..comportamento 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 /var/maildiretório lsdeve revelar se há algum link simbólico feito pela Apple, acho.

Responder2

No macOS (suponho que seja desde que você mencionou /Users), /var/mail/usernameé a mboxcaixa de entrada formatada para user usernamee /Users/usernameé o diretório inicial do mesmo usuário.

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


cd ..por padrão funcionará como cd -L .., ou seja, levará você até ológicodiretório pai em vez dofísicoDiretório Parental ( cd -P ..).

Do ksh-manual no macOS:

Por padrão, os nomes dos links simbólicos são tratados literalmente ao encontrar o nome do diretório. Isso é equivalente à -Lopção. A -Popção faz com que os links simbólicos sejam resolvidos na determinação do diretório. A última instância de -Lou -Pna linha de comando determina qual método é usado.

informação relacionada