首页 > 解决方案 > 是否可以使用 bash 命令通过文件启动虚拟环境?

问题描述

几乎每天我都要开始我的 django 项目。所以使用的命令序列:

cd myProject
source venv/bin/activate
cd djangoproject
python3 manage.py runserver

我已将这些命令放入 start.txt 文件中。但bash start.txt不会启动 virtualenv。难道我做错了什么?

标签: bashshellvirtualenv

解决方案


我的 .bashrc 中有这样的功能。

function cds() {
        cd $1; ls -lart

        current_dir=$PWD
        venv_dir="$current_dir/venv"
        if [ -d $venv_dir ];
        then
                venv_activate="$venv_dir/bin/activate"
                echo "Directory has corresponding virtual environment.."
                echo "Sourcing $venv_activate.."
                source $venv_activate
        else
                deactivate
        fi
}

如果要使用 bash 文件,则应在文件的最顶部添加/bin/bash,文件扩展名应为.sh

要运行它,更新你的 .bashrc 然后

$ source ~/.bashrc
$ cds ~/dev/my_project

它将转到您的目录,列出文件并激活虚拟环境


推荐阅读