pipx - 管理使用 Python 的 Command-Line 工具
前言
上班時常會需要安裝有的沒的工具,當遇到 Python 的時候就會很頭痛,畢竟每個工具都有不一樣的套件需求。
當環境沒有處理好的時候就會出現 A 工具可用,B 工具卻爛掉的狀況,這時候就可以靠 pipx 解決。
為什麼不直接安裝?什麼是 pipx?為什麼要用它?Python-venv 不好嗎?
首先為什麼不直接安裝呢?pip
在使用上有些需要注意的地方:
- 建議安裝套件時要用虛擬環境(
Python-venv
) - 永遠不要用
sudo pip install
- 不要安裝套件到全域環境
因此當你直接安裝 Python CLI 工具的時候就很有可能會觸發到這些問題。
什麼是 pipx?
簡單來說 pipx 是一個用來隔離安裝並執行 Python CLI 工具的工具。
接著為什麼要用他?
pipx 讓你能方便在全域環境中使用這些工具,而不影響其他 Python 專案或工具。
最後 Python-venv 不好嗎?
我自己認為方向不同,
Python-venv
比較適合專案開發時使用,pipx
則適合用在命令行工具的環境隔離。
還有一個原因是因為Python-venv
執行工具有點複雜 (我就懶:DDD
Install
可以直接參考官方文件,這邊就寫出 Ubuntu
系統安裝方法~
1 | sudo apt update |
基本使用
安裝你想要的工具
1 | pipx install <NAME> |
工具安裝完成後就可以像普通指令一樣執行,以下列出一個範例:
1 | pipx install git+https://github.com/Tib3rius/AutoRecon.git |
列出目前安裝的工具,以及詳細資訊
1 | pipx list |
執行 pipx install 後的流程
- 建立一個虛擬環境
- 使用
pip
在這個環境中安裝工具以及相依套件 - 將工具的執行檔透過軟連結連結到專用
PATH
中,使你可以直接執行該工具 - 將這個虛擬環境與工具綁定並管理
後記
很開心能夠發現 pipx
這個工具,解決了我很多環境上的問題,不然我時常把 Python 工具的環境跟一堆套件搞爛,實在很頭痛。
但我日常開發上還是會使用 Python-venv
建立虛擬環境。
這篇是時隔一段時間的新文章,接下來幾篇大概都會是介紹日常使用的工具。
- Title: pipx - 管理使用 Python 的 Command-Line 工具
- Author: WoodMan
- Created at : 2024-10-09 22:55:46
- Updated at : 2024-11-27 14:50:30
- Link: https://blog.lce-lab.dev/2024/10/09/pipx-管理使用Python的Command-Line工具/
- License: This work is licensed under CC BY-NC-SA 4.0.