pipで一括アップデート

  • 132
    Like
  • 3
    Comment

pipによるパッケージ管理は便利だが、インストールしたパッケージを一括でアップデートしようと思うと結構面倒くさい。

どうにかならないか調べたところ、以下のページに便利なコマンドが紹介されてた。

Pro Tip - Pip Upgrade All Python Packages

$ pip freeze --local | grep -v '^\-e' | cut -d = -f 1 | xargs pip install -U pip

追記:pip=9.0.1の形式に対応。コメントしてくださったみなさん、ありがとうございました。
$ pip list --outdated --format=legacy | awk '{print $1}' | xargs pip install -U

これで一括でアップデートできる。Python3系列の場合もpip3で置き変えればOK。

.zshrcとかにエイリアスを登録しとくとよさげ。他にもpip-toolsを使った方法もあるっぽいけど、このワンライナーで十分だという人も多いんじゃないかなあ。

なお、依存関係が壊れることもあるので注意。
実行後に少なくとも$ pip checkで依存関係の確認を行ないましょう。