Virtualenv有一个基本的命令:
virtualenv ENV
这个命令创建了一个ENV目录,用来存放新的虚拟环境。同时,ENV/lib/和ENV/include/目录被创建,它们包括了新的virtualenv python的库文件。这个环境中的包放在ENV/lib/pythonX.X/site-packages/目录中。
ENV/bin也被创建,可执行文件就在这个目录中。关键的pip和setuptools包也安装了,它们可以很容易地安装其他包到环境中,pip可以从ENV/bin/pip运行。
activate脚本
在一个新创建的virtualenv中,有一个activate shell脚本。对于Posix系统来说,它在/ENV/bin/目录中。运行的命令是:
source bin/activate
必须要使用source命令,因为它会改变你的shell环境。
deactivate命令的用法是:
deactivate
移除一个环境
移除一个虚拟环境很简单,首先deactivate,再删除环境目录就行了。命令是:
(ENV)$ deactivate
$ rm -r /path/to/ENV
–system-site-packages选项
如果使用命令:
virtualenv --system-site-packages ENV
虚拟环境将会从/usr/lib/python2.7/site-packages(或者全局site-packages目录所在的地方)继承包。
如果你控制了全局的site-packages命令,并且你想要依赖于哪里的包,可以使用它。如果你想和全局系统分离,不要使用这个选项。
使用没有bin/python的Virtualenv
有时你不想使用由virtualenv创建的python解释器。例如,在一个mod_python或者mod_wsgi环境中,仅仅有一个解释器。
你必须使用定制的python解释器去安装库。但是使用库的话,你必须确保路径是正确的。一个脚本可以更改路径。你可以设置环境如下所示:
activate_this='/path/to/env/bin/activate_this.py'
execfile(activate_this,dict(__file__=activate_this))
这会改变sys.path和sys.prefix,但是也运行你使用一个已经存在的解释器。
–extra-search-dir选项
这个选项允许你提供你自己的pip和setuptools版本,而不是使用virtualenv自带的版本。
要使用这个选项,提供一个或多个–extra-search-dir选项,如下所示:
virtualenv --extra-search-dir=/path/to/distributions ENV
/path/to/distributions路径应该指向一个包含setuptools和pip的目录。
以上就是我对于Virtualenv的认识。