加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

python – 通过os.system()激活virtualenv

发布时间:2020-12-20 13:00:39 所属栏目:Python 来源:网络整理
导读:我正在编写一个基于 Python的shell脚本来使用virtualenv,pip和fabric来构建一个Django应用程序.应该很简单,但似乎我无法通过shell脚本激活和运行virtualenv中的命令. os.system('virtualenv %s --no-site-packages' % project_name)os.system('source %s/bin
我正在编写一个基于 Python的shell脚本来使用virtualenv,pip和fabric来构建一个Django应用程序.应该很简单,但似乎我无法通过shell脚本激活和运行virtualenv中的命令.

os.system('virtualenv %s --no-site-packages' % project_name)
os.system('source %s/bin/activate' % project_name)
os.system('easy_install pip')

运行时,出错:

$startproject+ -s false sample
New python executable in sample/bin/python
Installing setuptools............done.
/testing
Searching for pip
Best match: pip 0.4
Processing pip-0.4-py2.6.egg
pip 0.4 is already the active version in easy-install.pth
Installing pip script to /usr/local/bin
error: /usr/local/bin/pip: Permission denied

显然源线没有运行,但为什么呢?它是一个并发/线程问题,还是更深层次的virtualenv?

谢谢!

解决方法

每个os.system调用都会创建一个新进程.您需要确保activate和easy_install在同一个os.system或subprocess调用中运行.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读