Você pode colocar caminhos relativos no caminho de pesquisa. É perigoso, porque pode fazer com que você execute binários inesperados quando estiver em um diretório que não faz parte do seu projeto; não faça isso em uma máquina multiusuário.
PATH=…;node_modules/.bin/ionic;…
Para mais segurança e flexibilidade, você pode alterar o caminho de pesquisa sempre que o diretório atual for alterado. No seu .bashrc
:
cd () { builtin cd "$@" && chpwd; }
pushd () { builtin pushd "$@" && chpwd; }
popd () { builtin popd "$@" && chpwd; }
chpwd () {
if [[ $PATH = */node_modules/.bin/ionic ]]; then
PATH=${PATH%:*}
fi
if [[ $PWD =~ ^"$HOME/dev/"[^/]* ]]; then
project_root=${BASH_REMATCH[0]}
PATH=$PATH:${project_root}/node_modules/.bin/inoic
fi
}
chpwd