gpt4 book ai didi

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

转载 作者:太空宇宙 更新时间:2023-11-03 12:13:35 24 4
gpt4 key购买 nike

我正在编写一个基于 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

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

谢谢!

最佳答案

每次调用 os.system 都会在一个新的子 shell 中运行命令,该子 shell 具有与原始 python 进程相同的属性。

尝试将命令放入一个由分号分隔的字符串中。

关于python - 通过 os.system() 激活 virtualenv,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1691076/

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