gpt4 book ai didi

bash - 脚本 virtualenvwrapper mkvirtualenv

转载 作者:行者123 更新时间:2023-11-29 08:58:56 25 4
gpt4 key购买 nike

我正在写一个 game在 python 2.7 中,并想编写我的游戏开发环境的“ Bootstrap ”脚本,然后调用 shovel .如果未检测到 virtualenvwrapper,我将使用 virtualenv bootstrap solution .但是,如果检测到 virtualenvwrapper ,我想改用它。

问题是我的引导脚本没有继承 virtualenvwrapper 内联 shell 函数。据我所知,这排除了运行诸如“mkvirtualenv NotOrion”之类的东西的可能性。由于设置了环境变量“VIRTUALENVWRAPPER_VIRTUALENV”(在我的例子中,来自 macports : /opt/local/bin/virtualenv-2.7),我尝试直接使用它相反:

#!/usr/bin/env bash

# Name your first "bootstrap" environment:
ENV_NAME=NotOrion
# Options for your first environment:
ENV_OPTS='--no-site-packages --distribute'

unset PYTHONDONTWRITEBYTECODE

function create_virtualenvwrapper_venv {
echo "installing into virtualenvwrapper directory"
cd $WORKON_HOME
$VIRTUALENVWRAPPER_VIRTUALENV $ENV_OPTS $ENV_NAME
cd -
#mkvirtualenv $ENV_NAME
#workon $ENV_NAME
}

function create_standalone_venv {
# not run/snipped
}

if [ -z "$VIRTUALENVWRAPPER_VIRTUALENV" ]; then
create_standalone_venv
else
create_virtualenvwrapper_venv
fi

pip install shovel
shovel help

我的引导脚本完成了 shovel 的安装。但是运行铲子(例如最后一行)会产生警告:

/Users/me/.virtualenvs/NotOrion/bin/shovel:25: UserWarning: Module argparse was already imported from /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/argparse.pyc, but /Users/me/.virtualenvs/NotOrion/lib/python2.7/site-packages is being added to sys.path
import pkg_resources
# normal shovel output snipped

那么是否有可能以某种方式从脚本中调用“mkvirtualenv”?如果没有,我能否从我的脚本中运行具有相同效果但产生警告的其他东西?

最佳答案

你的脚本应该能够做到:

# 'which' will print absolute path to virtualenvwrapper.sh
source `which virtualenvwrapper.sh`

我将它用于一些部署脚本。

关于bash - 脚本 virtualenvwrapper mkvirtualenv,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13111881/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com