2015-07-03 51 views
11

安装的软件包我想用一个小的Python项目管理相关模块的这种方式: http://blog.zoomeranalytics.com/pip-install-t/皮普冻结与--target

总之,我会做:

cd myproject

pip install --target ./pip-libs --upgrade -r requirements.txt

然后将./pip-libs添加到PYTHONPATH并运行我的脚本。

这似乎是,但我喜欢用使用画中画冻结,它不允许我做任何事情一样

pip freeze --target pip-libs

可以查看已安装的文件夹中的包。当然,我可以看看里面的内容,但是用--target显示安装在文件夹中的软件包的标准方式是什么?我能想到的唯一办法是做pip-libs的ls,然后用grep,awk玩...看起来不对。

我不确定是否有办法,也许这不是一个好主意,或者我应该请求这种功能的点。

Python 2.7.9。

回答

0

不幸的是,你不能这样做pip freeze。该文档说pip install安装到该目标文件夹,但它仍然在您的路径。因此pip freeze只显示安装了哪些软件包,而不是安装在特定位置的软件包。

你可以看看pip show其中确实包含对它们的安装信息(见https://pip.pypa.io/en/stable/reference/pip_show/),但你会写一些SED/AWK或类似的做就行了“位置”一grep和再回去并获取包名称。

的另一种选择是只要看看在安装文件夹和手动工作出了什么包的文件夹,其中从...类似:

ls ./pip-libs | grep -v .dist-info