背景
pipでインストールしたライブラリを一つずつ更新したい際は以下のように指定する
$ pip install -U ライブラリ名
ただ意外と一括ですべてのライブラリを最新にする方法は提供されていない。
requirements.txtで管理すれば一括更新は可能なのだが、globalでinstallしているパッケージを更新したい場合にrequirements.txtを作成してどこかのディレクトリで管理するのもなんか違う気がしたのでやり方を考えてみた。
pipでインストールしたライブラリを一括で最新に更新する方法
$ pip list --outdated | awk 'NR>=3 {print $1}' | xargs pip install -U
-
pip list --outdated
は最新版に追いついていないライブラリを出力してくれる - それを
awk
コマンドで3行目以降(ヘッダー除去)&1列目のみに加工し -
xargs
でpip install -U
を全行に適用させた