Reverte um sinalizador padrão

0

Como contexto. Eu tenho uma pasta que eu tenho link simbolicamente no meu diretório $HOME .

~> ls -s /var/www/to_link "$HOME/linked"

Eu cd em "$HOME/linked"

Portanto, por padrão, pwd mostra o diretório atual, incluindo links simbólicos. Nesse caso, seria /home/christopher/linked . Se eu quiser que ele retorne /var/www/to_link eu tenho que digitar pwd -P . Eu geralmente acho essa segunda forma mais útil que a primeira, mas gostaria que ambas estivessem disponíveis.

  • É possível ter o padrão pwd para incluir o sinalizador -P e usar outro sinalizador para incluir links simbólicos? Então, basicamente, pwd retornaria /var/www/to_link e pwd -X (ou algum outro sinalizador) retornaria o% original/home/christopher/linked.
por cwallenpoole 27.01.2015 / 16:59

1 resposta

1

Tanto cd como pwd têm opções -P e -L . Parece que você quer usar cd -P por padrão (que então define $ PWD para o diretório físico, o que afeta o prompt do bash e a saída de pwd ).

Você pode colocar um deles em seu .bashrc:

alias cd='cd -P'

cd () { builtin cd -P "$@"; }

Se você quiser ver "~ / linked" no seu prompt bash, você usará o cd "lógico": cd -L ~/linked

    
por 27.01.2015 / 17:27