Ubuntu 18.04下virtualenv生成多余local目录如何避免?
如何避免virtualenv 15.0.3在Ubuntu 18.04创建Python2.7虚拟环境时生成local目录
嘿,这个问题我之前也碰到过——Ubuntu 18.04上用旧版virtualenv创建Python2.7虚拟环境时,总会多出个local目录,里面就是指向自身目录的软链接,确实挺烦人的。这是因为Ubuntu的Python 2.7包结构和其他发行版(比如你提到的SuSE)不一样,virtualenv 15.0.3默认会为了兼容这种结构生成这个目录,但其实完全没必要。
这里有两个靠谱的解决办法:
1. 创建虚拟环境时添加--no-local参数
直接在创建命令里加上这个参数,就能阻止local目录生成:
virtualenv --no-local test-env
创建完成后进入目录查看,local文件夹就不会出现了。
2. 升级virtualenv到新版本
virtualenv在16.x及以后的版本里已经改掉了这个默认行为,不会再自动生成local目录。你可以用pip升级一下:
pip install --upgrade virtualenv
升级后再创建虚拟环境,就不会有这个多余的目录了。
另外提一句:就算已经创建了带local目录的虚拟环境,直接删掉它也完全没问题,因为那三个软链接本来就指向虚拟环境自己的bin、include、lib,删除后对虚拟环境的使用没有任何影响:
rm -rf test-env/local/
内容的提问来源于stack exchange,提问作者guettli
相关产品推荐
相关产品推荐

