Se eu criar um link simbólico no terminal com um comando como
ln -s /path/to/some/directory symbolicLink
e siga o link com
cd symbolicLink
o terminal parece pensar que o cwd está ~/symbolicLink/
sendo exibido ~/path/to/some/directory/
(assumindo que o link foi feito ~
, é claro). O que isso significa é que, se eu digitar cd ..
, sou levado de volta ~
, porque o terminal 'pensa' que este é o pai do cwd.
O que eu precisaria mudar para que cd ..
, em vez disso, me levasse ~/path/to/some/
, ou seja, o verdadeiro pai ~/path/to/some/directory/
?
cd -P
ainda resolve o problema que estava enfrentando, mas ainda é útil saber.Uma maneira alternativa é executar:
fonte
Sinto sua dor - considero
bash
basicamente prejudicada para uso interativo por causa desse comportamento.tcsh
é um shell muito mais amigável para uso interativo. Deixebash
para programação (se você insistir em escrever scripts de shell quando houver alternativas muito melhores entre as muitas linguagens de script).Para alterar shells para qualquer usuário, digite
chsh
na linha de comando e siga as instruções (novamente, eu recomendo/bin/tcsh
e o excelente livro da O'Reilly Using csh e tcsh , disponível para quase nada usado).fonte
cd
comportamento padrão dos links simbólicos. Eu tenho que lembrar de colocarset -o physical
na minha.bashrc
ou.bash_profile
para todas as máquinas que eu uso.