PIP卸载显示已卸载包,但实际上不是

PIP卸载显示已卸载包,但实际上不是,pip,openstack,Pip,Openstack,我正在尝试使用pip删除并再次安装一个包“python keysteneclient”。问题是,当我运行pip uninstall python keystoneclient时,它显示已成功卸载: root@openstack1:~/cinder# pip uninstall python-keystoneclient Uninstalling python-keystoneclient: Proceed (y/n)? y Successfully uninstalled python-keys

我正在尝试使用
pip
删除并再次安装一个包“python keysteneclient”。问题是,当我运行
pip uninstall python keystoneclient
时,它显示已成功卸载:

root@openstack1:~/cinder# pip uninstall python-keystoneclient
Uninstalling python-keystoneclient:
Proceed (y/n)? y
Successfully uninstalled python-keystoneclient
但是,当我执行
pip搜索python keysteneclient
时,它显示:

root@openstack1:~/cinder# pip search python-keystoneclient
python-keystoneclient     - Client library for OpenStack Identity API
                        (Keystone)
INSTALLED: 0.2.1 (latest)

我已尝试再次安装该软件包,但它显示
要求已得到满足
。不确定为什么会发生这种情况。

可能是通过PIP不完全知道的包或机制安装在其他地方。加上我上次听到的,pip卸载在简单的情况下工作,但它很容易被愚弄,并且在所有平台上并不完全一致

我求助于做类似的事情

python -c "import sys;import pprint;pprint.pprint(sys.path)"
向我展示python可能在哪里找到它的模块——这将向您展示您是否在python的系统路径中的某个地方留下了一个本地目录(发生在我在根目录下执行“python setup.py develope”之后,我没有注意)

您还可以通过类似的设置询问KeyoneClient它是从何处导入的,您可以使用该设置查找并使用nuke:

python -c "import keystoneclient;print keystoneclient.__file__"

您必须手动卸载keystone客户端

在我的服务器上,在
/usr/local/lib/python2.7/dist packages/python_keysteneclient-0.3.2-py2.7.egg info
(您的服务器上可能有不同的版本号)
您可以找到一个
installed files.txt
文件,该文件记录keystone客户端安装的所有文件

然后,删除它们和dist包中的相关目录

cat installed-files.txt | xargs sudo rm -rf
cd ..
sudo rm -rf keystoneclient python_keystoneclient-0.3.2-py2.7.egg-info
现在,keystoneclient已完全卸载