我运行Ubuntu 9:10,安装了一个名为M2Crypto的包(版本为0.19.1)。我需要下载、构建和安装最新版本的M2Crypto包(0.20.2)。

0.19.1包的文件位于多个位置,包括(/usr/share/ pshared和/usr/lib/pymodules.python2.6)。

在安装0.20.2之前,如何从系统中完全卸载0.19.1版本?


当前回答

要自动升级所有过时的包(使用pip安装的),只需运行下面的脚本,

pip install $(pip list --outdated | awk '{ print $1 }') --upgrade

这里,pip list——outdated将列出所有过期的包,然后我们将其管道到awk,因此它将只打印名称。 然后,$(…)将使它成为一个变量,然后,一切都自动完成。确保您拥有权限。(如果你不明白,可以把sudo放在pip前面) 我会写一个名为pip-upgrade的脚本 代码如下,

#!/bin/bash
sudo pip install $(pip list --outdated | awk '{ print $1 }') --upgrade

然后使用以下脚本行来准备它:

sudo chmod +x pip-upgrade
sudo cp pip-upgrade /usr/bin/

然后,点击pip-upgrade,瞧!

其他回答

在Juptyer笔记本上,一个很简单的方法就是

!pip install <package_name> --upgrade

因此,您只需要替换为实际的包名。

您可能想要查看像pip这样的Python包管理器。如果您不想使用Python包管理器,您应该能够下载M2Crypto并在旧的安装上构建/编译/安装。

例如:

python -m pip install --proxy <proxyserver_name>:<port#> <pkg_name> 

记住,在设置变量后导出变量,使它们可用于外壳会话。

窗口:

添加到环境变量:

set HTTP_PROXY=<proxyserver_name>:<port#>

你可能必须先安装完整的python包

我认为最好的一句话是:

pip install --upgrade <package>==<version>

方法一:手动升级


pip install package_name -U

方法二:一次性升级(如果部分包升级失败,有很大概率会回退)


pip install $(pip list --outdated --format=columns |tail -n +3|cut -d" " -f1) --upgrade

方法三:循环升级


for i in  $(pip list --outdated --format=columns |tail -n +3|cut -d" " -f1); do pip install $i --upgrade; done