LinuxPythonPython 运维

pip库自动更新的脚本

2016-12-09  本文已影响62人  Mr_Shang

问题:pip没有自动全部更新的指令

正常情况下,更新pip库的步骤是:
1.先用命令pip3 list --outdated --format=columns(旧版本的pip请使用pip3 list --outdated)查看有哪些库有可用更新。

Package    Version Latest Type
---------- ------- ------ -----
Django     1.10.3  1.10.4 wheel
requests   2.12.2  2.12.3 wheel
Scrapy     1.2.1   1.2.2  wheel
setuptools 29.0.1  30.3.0 wheel

2.使用pip3 install --upgrade Django 来更新Django库。

3.重复步骤2,直到更新所有库。

目标:用脚本自动全部更新

用脚本自动查找有可用更新的库,然后自动进行更新

方案:用sh脚本实现

代码:最后成果

pip3 list --outdated --format=columns |
    sed -n '3,$p' |
    cut -d ' ' -f 1 |
    while read framework 
    do
        pip3 install --upgrade $framework
    done

注意:pip版本问题

pip版本不同,可能输出的可用更新格式不一样,按照以上思路,自己适当调整即可。

其它参考方式

如果不用读取变量也可以,使用替换然后sh执行,脚本如下:

pip3 list --outdated --format=columns |
    sed -n '3,$p' |
    cut -d ' ' -f 1 |
    sed 's/^/pip3 install --upgrade /' |
    sh -x
上一篇下一篇

猜你喜欢

热点阅读