Autoenv超级棒!但是,我的终端速度有点慢,因为autoenv调用workon每次我从一个目录cd到autoenv根目录下的另一个目录。如何自定义我的.env文件,以便仅在我最初进入目录时调用workon?
答案 0 :(得分:2)
我在 .env 文件中有这个:
type deactivate &>/dev/null || source venv/bin/activate
检查环境是否已激活。如果没有,请激活环境,否则什么也不做。
答案 1 :(得分:1)
如果您有多个项目,每个项目都有自己的virtualenv,并且您希望在cd
进入项目文件夹时自动切换virtualenvs(当然,确保仅在必要时调用workon
)那么你在.env
文件中需要更多的逻辑:
venv=venv
currentvenv=""
if [[ $VIRTUAL_ENV != "" ]]
then
# Strip out the path and just leave the env name
currentvenv="${VIRTUAL_ENV##*/}"
fi
if [[ "$currentvenv" != "$venv" ]]
then
echo "Switching to environment: $venv"
workon $venv
#else
# echo "Already on environment $venv"
fi