将 .zshrc 中的 switch-python() 工具独立出来的 CLI,专门用于在 macOS 上在 Homebrew Python (/opt/homebrew/bin) 与官方 Python (/usr/local/bin) 之间一键切换。
- 🧠 记住最近一次选择(存储于
~/.python-switch/choice) - 🪄 自动在新 Shell 中调整
PATH,无需重复编辑.zshrc - 🚦
python-switch status可以随时查看当前python3/pip指向及版本 - 🧹 内置 PATH 去重逻辑,避免无限堆叠同一路径
- ⚙️ 提供
env子命令,可输出export语句给eval或脚本使用
cd ~/GitHub
./python-switch/install.sh安装脚本会:
- 将
python-switch复制到~/.local/bin/ - 如有需要,为
~/.zshrc添加~/.local/bin到PATH - 在
~/.zshrc追加:这样每次启动 shell 时都会读取最近的选择并调整 PATH。# python-switch 自动 PATH 配置 if command -v python-switch >/dev/null 2>&1; then eval "$(python-switch env --quiet)" fi # python-switch 自动 PATH 配置 END
安装后重新加载 zsh:
source ~/.zshrcpython-switch brew # 切到 Homebrew Python (/opt/homebrew/bin)
python-switch official # 切到 官方 Python (/usr/local/bin)
python-switch status # 查看当前 PATH、python/pip 状态
python-switch env # 输出 export PATH=...(可与 eval 联用)python-switch brew / python-switch official 会更新记忆文件。若希望立刻作用于当前 shell,可随后执行:
eval "$(python-switch env)"或直接重新 source ~/.zshrc。
- 逻辑完全沿用原函数:记忆最近一次选择、PATH 去重、打印当前
python3/pip信息 - 不再需要在
.zshrc中维护冗长函数,只需保留安装脚本追加的几行配置 - CLI 风格与
whatcodec等项目保持一致,方便版本控制与复用
- 删除 CLI:
rm ~/.local/bin/python-switch - 从
~/.zshrc中移除安装脚本追加的 PATH 片段 - (可选)删除
~/.python-switch/
即可恢复安装前状态。