我最近尝试使用 bash 脚本自动设置 Ubuntu VM(我是 bash 脚本的新手)。
问题是我设置它的方式,它不起作用。特别是 mkvirtualenv 和 workon 命令在 bash 脚本中不起作用。如何在 bash 脚本中创建一个 virtualenv 并传递一个变量,然后通过 pip 安装到 virtualenv 中?
#!/bin/bash
VENV_NAME='name_of_virtualenv'
#Setting up virtualenv
mkdir --mode=770 /var/virtualenvs
chown -R www-data:www-edit /var/virtualenvs
chmod 771 /var/virtualenvs
echo '# virtualenv and virtualwrapper' >> ~/.bashrc
echo ' export VIRTUALENV_USE_DISTRIBUTE=1' >> ~/.bashrc # <-- Always use pip/distribute
echo ' export WORKON_HOME=/var/virtualenvs' >> ~/.bashrc
echo ' source /usr/local/bin/virtualenvwrapper.sh' >> ~/.bashrc
echo ' export PIP_VIRTUALENV_BASE=$WORKON_HOME' >> ~/.bashrc
echo ' export PIP_RESPECT_VIRTUALENV=true' >> ~/.bashrc
source ~/.bashrc
mkvirtualenv --distribute '{VENV_NAME}'
workon {VENV_NAME}
pip install psycopg2
pip install --upgrade PIL