我运行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版本?
我运行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