较新的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更新所有已安装的包实现方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。