新建一個shell文件
比如upgrade.sh
輸入以下內容
for i in `pip list -o --format legacy|awk '{print $1}'` ; do sudo -H pip install --upgrade $i; done
pip list -o 得到所有待更新的包
format有兩個選項,一個是legacy,一個是columns
後者會帶一個表頭:
Package Version Latest Type
因此選擇用legacy的格式
用awk得到第一列
遍歷更新
還有一種方法:
使用python,以root權限運行
import pip
from subprocess import call
for dist in pip.get_installed_distributions():
call("pip install --upgrade " + dist.project_name, shell=True)
但是遍歷了所有安裝了的包,效率偏慢