python通过pip更新所有已安装的包实现方法

较新的pip已经支持list --outdated了,所以记录一下新的方法:

pip list --outdated --format=legacy |awk '{print $1}' |xargs sudo -H pip install -U
pip3 list --outdated --format=legacy |awk '{print $1}' |xargs sudo -H pip3 install -U

format有两个选项,一个是legacy,一个是columns。后者会带一个表头:

Package        Version Latest Type
-------------- ------- ------ -----

因此选择用legacy的格式,用awk取第一列就好了。

另外,网上很多方法都是在root下操作或者直接sudo不带-H的,这会在一些机器上出现问题。推荐用sudo -H,具体效果请自行查看man手册。

以上这篇python通过pip更新所有已安装的包实现方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持菜鸟教程(cainiaojc.com)。