我正在尝试修复我的一个virtualenv -我想将所有已安装的库重置为与生产相匹配的库。
有没有一种快速简单的方法来处理皮普?
我正在尝试修复我的一个virtualenv -我想将所有已安装的库重置为与生产相匹配的库。
有没有一种快速简单的方法来处理皮普?
当前回答
如果你正在运行virtualenv:
virtualenv --clear </path/to/your/virtualenv>
例如,如果virtualenv是/Users/you/。Virtualenvs /projectx,然后运行:
virtualenv --clear /Users/you/.virtualenvs/projectx
如果你不知道你的虚拟环境的位置,你可以在激活的虚拟环境中运行python来获取路径
其他回答
在Windows上,如果你的路径配置正确,你可以使用:
pip freeze > unins && pip uninstall -y -r unins && del unins
这是对我有用的命令:
pip list | awk '{print $1}' | xargs pip uninstall -y
简单有力的方法 跨平台的 在pipenv的工作也是:
pip freeze
pip uninstall -r requirement
pipenv:
pipenv run pip freeze
pipenv run pip uninstall -r requirement
但不会更新piplock或pipfile,所以要注意
Pip无法知道它安装了哪些包,系统的包管理器安装了哪些包。为此,您需要这样做
对于基于rpm的发行版(将python2.7替换为安装PIP的python版本):
find /usr/lib/python2.7/ |while read f; do
if ! rpm -qf "$f" &> /dev/null; then
echo "$f"
fi
done |xargs rm -fr
对于基于deb的发行版:
find /usr/lib/python2.7/ |while read f; do
if ! dpkg-query -S "$f" &> /dev/null; then
echo "$f"
fi
done |xargs rm -fr
然后清理剩下的空目录:
find /usr/lib/python2.7 -type d -empty |xargs rm -fr
我发现上面的答案非常误导人,因为它会从你的发行版中删除所有(大部分?)python包,可能会给你留下一个坏掉的系统。
我使用——user选项卸载安装在用户站点上的所有包。
pip3 freeze --user | xargs pip3 uninstall -y