pipx 依赖 pip 和 virtualenv,它只能在 python 3.6+ 的 Python 版本中才能使用。
在开发中,我们常常需要使用各种第三方工具包来辅助开发工作。但是,有时候不同项目可能需要不同版本的工具包,或者我们希望将这些工具包与特定项目隔离开来以避免冲突。
在这种情况下,pipx 是一个非常方便的工具,它可以帮助我们管理全局安装的 Python 工具包,并且能够为每个工具包创建独立的虚拟环境,从而实现工具包的隔离和版本管理。
pipx 只是解决 pip 的一个痛点,pipx的适用场景比较单一,它只适用于安装和运行那些有提供命令行入口的app。
原理
pipx 使用 Python 的虚拟环境来安装和运行全局工具包。每个工具包都被安装到一个独立的虚拟环境中,这样就可以避免与其他工具包产生冲突。
此外,pipx 还会创建一个符号链接到每个工具包的可执行文件,以便可以直接在命令行中运行这些工具。
基础使用
安装 pipx
首先需要安装它。可以使用 pip 来安装 pipx
Bash
python3 -m pip install pipx
python3 -m userpath append ~/.local/bin
安装工具包
安装工具包非常简单,只需使用 pipx install 命令即可。例如,要安装 Poetry,可以执行以下命令:
Bash
pipx install poetry
运行工具包
安装完成后,可以直接在命令行中使用工具包。
Bash
poetry about
其他命令
查看已安装过的包
Bash
pipx list
安装包
运行
升级某个包
Bash
pipx upgrade <pkg>
升级全部包
Bash
pipx upgrade-all
卸载包
Bash
pipx uninstall <pkg>
卸载全部包
Bash
pipx uninstall-all
重装全部包
Bash
pipx reinstall-all
在指定的VENV运行PIP
Bash
pipx runpip <env_name> <args>
输出如何配置自动完成
pipx completions
高级应用
安装一个包的多个版本
Objective-C
pipx install --suffix=@1.2.0 poetry==1.2.0
pipx install --suffix=@1.7.0 poetry==1.7.0
pipx install --suffix=@preview --pip-args=--pre poetry
poetry@1.2.0 --version
poetry@1.7.0 --version
poetry@preview --version
注意事项
- 二进制文件的保存位置默认是
~/.local/bin。 - 虚拟环境的保存位置:默认是
~/.local/share/pipx。 - 使用
pipx安装的工具包不会影响系统中已安装的全局工具包。 - 每个工具包都会创建一个独立的虚拟环境,因此不会与其他工具包产生冲突。
- 如果某个工具包不再需要,可以随时通过
`pipxuninstall` 命令进行卸载。 - 每执行一次
pipx install就会新建一个虚拟环境。