[파이썬] 모든 패키지 일괄 업그래이드

[파이썬] 모든 패키지 일괄 업그래이드

파이썬을 사용하다 보면 많은 패키지를 pip 명령으로 설치하게 됩니다. 시간이 지나 일부 패키지를 업그래이드 하게 되는데 가끔 번거롭게 느껴집니다. 이 포스팅에서는 컴퓨터에 설치되어 있는 모든 패키지를 일괄 업그래이드 하는 방법을 소개 합니다.

#01. pip 업그래이드

파이썬의 패키지 관리자인 pip도 종종 업그래이드를 해 줘야 합니다.

아래의 명령을 사용합니다.

Windows

$ pip install --upgrade pip

Mac, Linux

$ pip3 install --upgrade pip

#02. 오래된 패키지 목록 조회

현재 컴퓨터에 설치된 버전보다 더 상위 버전이 출시된 패키지의 목록을 조회합니다.

Windows

$ pip list --outdated

Mac, Linux

$ pip3 list --outdated

출력예시

➜ pip3 list --outdated
Package                  Version         Latest         Type
------------------------ --------------- -------------- -----
comm                     0.2.1           0.2.2          wheel
fonttools                4.49.0          4.50.0         wheel
graphviz                 0.20.2          0.20.3         wheel
holidays                 0.44            0.45           wheel
importlib_resources      6.1.3           6.4.0          wheel
ipython                  8.22.1          8.22.2         wheel
json5                    0.9.18          0.9.24         wheel
jupyter_client           8.6.0           8.6.1          wheel
jupyter_core             5.7.1           5.7.2          wheel
jupyter-events           0.9.0           0.10.0         wheel
jupyter-lsp              2.2.3           2.2.4          wheel
jupyter_server           2.12.5          2.13.0         wheel
jupyter_server_terminals 0.5.2           0.5.3          wheel
jupyterlab               4.1.2           4.1.5          wheel
jupyterlab_server        2.25.3          2.25.4         wheel

#03. 모든 패키지 업그래이드

[1] Windows

아래의 명령을 그대로 복사하여 명령프롬프트에 붙여넣고 실행합니다.

$ powershell -command "pip freeze | %%{$_.split('==')[0]} | %%{pip install --upgrade $_}"

[2] Mac, Linux

$ python3 -m pip list --outdated --format=json | jq -r '.[] | "\(.name)==\(.latest_version)"' | xargs --no-run-if-empty -n1 pip3 install -U
호쌤(이광호)'s Picture

About 호쌤(이광호)

메가스터디IT아카데미에서 Java, Spring, Python, Frontend 등을 강의하는 IT 전문 강사이자 프리렌서 개발자 입니다.
https://www.youtube.com/@hossam-codingclub

Seoul, Korea http://www.hossam.kr