Я использую virtualenv с django , и поэтому я скажу, что две разные директории говорят:
~/Development/site1
~/Development/site2
Поэтому, чтобы настроить свою среду, я обычно иду на ~/Development/site1
, затем запустите source bin/activate
. Возможно ли, чтобы эта команда запускалась автоматически, когда я перехожу в один из этих каталогов?
Достаточно ли псевдонима bash? или это должно быть связано с входом в конкретный каталог?
Мое решение bash alias.
В ~ / .bashrc проверьте, что .bash_aliases запущен.
if [ -f ~/.bash_aliases ]; then
. ~/.bash_aliases
fi
В ~ / .bash_aliases
alias siteone='cd ~/Development/site1 && source bin/activate'
alias sitetwo='cd ~/Development/site2 && source bin/activate'
Вы можете поместить это в ваш .bashrc, чтобы переопределить команду «cd»:
cd()
{
[ -z "$*" ] && builtin cd $HOME
[ -n "$*" ] && builtin cd "$*"
[ -f "./bin/activate" && source ./bin/activate
}