A maneira que eu costumava fazer isso é criar um diretório que contenha links simbólicos para os diretórios que você quer que os atalhos façam e adicionar esse diretório ao seu CDPATH. O CDPATH controla onde cd
irá procurar quando você alternar os diretórios, então se esse diretório de links simbólicos estiver no seu CDPATH você pode cd
para qualquer um dos diretórios ligados diretamente:
mkdir ~/symlinks
ln -s /usr/bin ~/symlinks/b
export CDPATH=~/symlinks
cd b # Switches to /usr/bin
A desvantagem é que não funcionará se houver um diretório em seu diretório atual chamado "b" - que tem precedência sobre o CDPATH
Eu normalmente não gosto de respostas que dizem "primeiro você precisa trocar shells", mas esse recurso exato existe em ZSH , se você estiver disposto a usar isso em vez disso; é chamado diretórios nomeados . Você exporta uma variável foo
e, quando se refere a ~foo
, ela é resolvida com o valor de $foo
. Isso é especialmente conveniente porque funciona em comandos além de cd
:
echo hi > /tmp/test
export t=/tmp
cat ~t/test # Outputs "hi"