我正在为我的一个程序编写引导代码,并尝试使用 subprocess.call 安装到我的 virtualenv 目录
最初我使用:
subprocess.call(['pip', 'install', '-E', dir_name, 'processing'])
在 ubuntu 上重新运行时,我注意到 -E 已过时(http://pypi.python.org/pypi/pip/)并且需要使用:
virtualenv dir_name && dir_name/bin/pip install processing
这在 cmd 行中工作正常,但在子进程中不起作用:
subprocess.call(['virtualenv', dir_name, '&&', '{0}/bin/pip'.format(dir_name), 'install', 'processing'])
返回此错误消息:
There must be only one argument: DEST_DIR (you gave dir_name && dir_name/bin/pip install processing)
Usage: virtualenv [OPTIONS] DEST_DIR
我也尝试过 virtualenv.create_bootstrap_script(extra_text) (但无法弄清楚并且我正在运行一些来自 git 的额外脚本)
想知道我在子流程中做错了什么或者我可以改变什么。
谢谢!